乐于分享
好东西不私藏

OpenClaw 进阶实战:打造你的24小时AI自动化工作流

OpenClaw 进阶实战:打造你的24小时AI自动化工作流

哈喽,我是福序智研的 Fuge。
上期我们完成了 OpenClaw 的部署和基础配置。今天深入进阶:多Agent协作、自定义Skill开发、5个高阶自动化案例,真正让AI替你24小时打工。

一、深入理解 OpenClaw 架构

上期我们提到了 5 个核心概念,现在深入理解它们如何协同工作

Gateway(网关)- 统一入口

┌──────────┐│          Gateway(网关)                 ││  接收来自各个渠道的消息:                ││  - 飞书 / 企业微信 / Telegram         ││  - Web Dashboard                       ││  - 定时任务触发                        │└──────────┘                   ↓         ┌─────────────┐         │   AI Agent   │         └─────────────┘                   ↓         ┌─────────────┐         │  Skills(执行)│         └─────────────┘

关键配置(~/.openclaw/config.yaml):

gateway:port:18789 # Web 控制台端口host:“0.0.0.0” # 允许远程访问(谨慎)auth:enabled:true # 启用认证password:“your_password”

Channels(消息渠道)- 多平台接入

# 查看已配置的渠道openclaw channels list# 添加新渠道(飞书/企业微信/Telegram…)openclaw channels add# 测试渠道连通性openclaw channels test feishu

多渠道协同

你 → 飞书 → Gateway → Agent → 执行任务你 → Telegram → Gateway → Agent → 执行任务(同一个 Agent,多个入口)

Memory(记忆系统)- 让 AI 记住你

# 查看当前记忆openclaw memory list# 手动添加记忆openclaw memory add "用户偏好:回复简洁,不要废话"# 删除记忆openclaw memory delete <id>

记忆类型

类型
作用
示例
用户偏好
回复风格、输出格式
“代码用 Python,不用 JavaScript”
项目上下文
当前工作项目信息
“正在开发 XX 项目,技术栈:…”
历史决策
之前的选择和原因
“上次选了方案 A,因为…”


二、多 Agent 协作实战

单个 Agent 能处理大部分任务,但复杂项目需要多个 Agent 分工协作

场景:自动化竞品分析系统

需求每天自动监控竞品动态(阿里、腾讯、字节),生成分析报告。

架构设计

┌───────────────┐│          主控 Agent(Coordinator)         ││  负责:接收指令、分配任务、汇总结果        │└────────────┬──────────────────────────────┘              │     ┌────────┼────────┐     ↓        ↓        ↓┌─────────┐ ┌─────────┐ ┌─────────┐│ Agent 阿里 │ │ Agent 腾讯 │ │ Agent 字节 ││ (研究员) │ │ (研究员) │ │ (研究员) │└─────────┘ └─────────┘ └─────────┘     │        │        │     └────────┼────────┘              ↓        ┌──────────┐        │  分析师   │        │  (汇总)  │        └──────────┘

实现步骤

第1步:创建 Agent 团队

# 创建团队配置文件 

~/.openclaw/teams/competitor-analysis.yaml

cat > ~/.openclaw/teams/competitor-analysis.yaml << ‘EOF’

team_name: “competitor-analysis”

agents:

  – name: “coordinator”

    role: “主控”

    model: “claude-3-5-sonnet”

    system_prompt: “你是竞品分析项目的主控Agent,负责分配任务和汇总结果。”

  – name: “researcher-alibaba”

    role: “研究员-阿里”

    model: “deepseek-chat”

    system_prompt: “专注研究阿里巴巴的AI产品动态、技术博客、开源项目。”

  – name: “researcher-tencent”

    role: “研究员-腾讯”

    model: “deepseek-chat”

    system_prompt: “专注研究腾讯的AI产品动态、技术博客、开源项目。”

  – name: “researcher-bytedance”

    role: “研究员-字节”

    model: “deepseek-chat”

    system_prompt: “专注研究字节跳动的AI产品动态、技术博客、开源项目。”

  – name: “analyst”

    role: “分析师”

    model: “claude-3-5-sonnet”

    system_prompt: “汇总各研究员的分析结果,生成对比报告和趋势预测。”

EOF

第2步:启动团队

在 OpenClaw Web 控制台中:

你:启动竞品分析团队,开始今天的监控任务Coordinator Agent:✓ 已启动团队:competitor-analysis✓ 分配任务:  - researcher-alibaba:研究阿里通义千问最新动态  - researcher-tencent:研究腾讯混元最新动态  - researcher-bytedance:研究字节豆包最新动态✓ 预计完成时间:25分钟

第3步:查看执行日志

# 查看团队执行状态openclaw teams status competior-analysis# 查看某个 Agent 的日志openclaw agents logs researcher-alibaba --tail 50

输出示例

[09:00:01] coordinator: 启动团队,分配任务[09:00:02] researcher-alibaba: 开始搜索"通义千问 最新动态"[09:00:15] researcher-alibaba: 找到3篇相关文章,正在分析...[09:00:30] researcher-tencent: 开始搜索"腾讯混元 最新动态"...[09:25:00] analyst: 汇总完成,生成报告...[09:25:30] coordinator: 任务完成,报告已发送到飞书

三、自定义 Skill 开发

OpenClaw 的精华在于 Skills。上期我们装了现成的,今天教你从0到1开发一个自定义 Skill

场景:开发一个”股票监控” Skill

需求每天监控自选股的股价,跌幅超过5%自动通知你。

第1步:创建 Skill 目录结构

# Skill 目录:~/.openclaw/skills/mkdir -p ~/.openclaw/skills/stock-monitorcd ~/.openclaw/skills/stock-monitor# 目录结构stock-monitor/├── SKILL.md          # Skill 描述文件(必须)├── config.yaml       # 配置文件├── index.js          # 主逻辑(Node.js)└── README.md         # 使用文档

第2步:编写 SKILL.md(关键!)

# Skill: stock-monitor## 功能描述监控自选股股价,异常波动自动通知。## 触发条件- 用户说"监控股票 XXX"- 用户说"我的股票怎么样了"- 定时任务触发(每天9:30-15:00,每30分钟检查一次)## 依赖- 需要安装:axios(HTTP 请求)- 需要配置:股票 API Key(腾讯财经/新浪财经)## 使用方法### 添加监控

你:帮我监控比亚迪(002594)的股价,跌破300元通知我 Agent:✓ 已添加监控:比亚迪(002594) 触发条件:股价 < 300元 检查频率:每30分钟 通知方式:飞书消息

### 查看监控列表
你:我的股票监控列表 Agent:当前监控(3只): 1. 比亚迪(002594)- 当前价格:315.50元 2. 茅台(600519)- 当前价格:1680.00元 3. 腾讯(00700.HK)- 当前价格:420.00港币
### 移除监控
你:取消监控比亚迪 Agent:✓ 已移除监控:比亚迪(002594)
技术实现

index.js(核心逻辑)

const axios = require(‘axios’);

// 获取股价

async functiongetStockPrice(stockCode) {

const url = `https://hq.sinajs.cn/list=${stockCode}`;

const response = await axios.get(url);

  // 解析新浪财经返回的数据

const data = response.data.split(‘,’);

return {

    name: data[0],

    price: parseFloat(data[3]),  // 当前价

    change: parseFloat(data[2]),  // 涨跌幅

    // …

  };

}

// 检查监控条件

async functioncheckAlerts() {

const config = require(‘./config.yaml’);

for (const stock of config.stocks) {

const price = await getStockPrice(stock.code);

if (price.price < stock.threshold) {

      // 触发通知

await sendNotification(stock, price);

    }

  }

}

// 发送通知(飞书)

async functionsendNotification(stock, price) {

  // 调用飞书 Webhook

  // …

}

安装方法

# 在 OpenClaw 中安装此 Skillopenclaw skills install ~/.openclaw/skills/stock-monitor# 重启 OpenClawopenclaw restart# 验证安装openclaw skills list | grep stock-monitor

第4步:安装和测试

# 1. 安装依赖cd ~/.openclaw/skills/stock-monitornpm init -ynpm install axios# 2. 在 OpenClaw 中注册 Skillopenclaw skills install ~/.openclaw/skills/stock-monitor# 3. 重启openclaw restart# 4. 测试# 在 Web 控制台中输入:你:帮我监控比亚迪(002594),跌破300元通知我


四、5个高阶自动化案例

案例1:自动抓取竞品官网更新

需求每天自动抓取竞品官网(阿里云、腾讯云、华为云),检测产品更新,生成对比报告。

实现

# 1. 安装浏览器自动化 Skillopenclaw skills install @openclaw/browser-control# 2. 创建定时任务在 Web Dashboard 中添加 Cron Job:{"name""竞品官网监控","schedule""0 9 * * *",  # 每天早上9点"prompt""访问阿里云、腾讯云、华为云官网,抓取产品更新日志,对比上周变化,生成报告发送到飞书"}

案例2:GitHub 仓库监控 + 自动 PR 审查

需求监控团队 GitHub 仓库,有新 PR 时自动审查代码质量。

实现

# 1. 安装 GitHub Skillopenclaw skills install @openclaw/github-manager# 2. 配置 Webhook(GitHub → OpenClaw)# 在 GitHub 仓库设置中,添加 Webhook:# Payload URL: http://your-openclaw-gateway:18789/webhooks/github# 3. 配置自动审查规则(~/.openclaw/skills/github-manager/config.yaml)auto_review:  enabled: true  check_items:    - "代码风格(ESLint)"    - "单元测试覆盖率 > 80%"    - "安全漏洞扫描"    - "性能影响评估"

案例3:自动生成周报并发送到钉钉

需求每周五下午5点,自动汇总本周工作,生成周报发送到钉钉群。

实现

# ~/.openclaw/cron_jobs/weekly-report.yamlname:"每周工作周报"schedule:"0 17 * * 5"# 每周五 17:00prompt:|  请执行以下任务:  1. 读取本周的 Git 提交记录(git log --since="last Monday")  2. 读取本周的飞书会议纪要(从飞书 API)  3. 汇总成周报,格式:     - 本周完成工作(按项目分类)     - 遇到的问题和解决方案     - 下周计划  4. 发送到钉钉群(Webhook: https://oapi.dingtalk.com/robot/send?access_token=XXX)

案例4:智能客服机器人(多平台统一)

需求统一管理微信、飞书、官网在线客服的消息,AI 自动回复常见问题。

实现

# 架构:# 微信客服 → OpenClaw Gateway → AI Agent → 自动回复# 飞书客服 → OpenClaw Gateway → AI Agent → 自动回复# 官网聊天 → OpenClaw Gateway → AI Agent → 自动回复# 配置知识库(FAQ)mkdir -p ~/.openclaw/knowledge-base/customer-service# 放入常见问题文档(PDF/Markdown/TXT)# 在 Agent 配置中启用知识库openclaw config set agent.knowledge_base "~/.openclaw/knowledge-base/customer-service"# 设置自动回复规则openclaw config set agent.auto_reply.enabled trueopenclaw config set agent.auto_reply.confidence_threshold 0.8# 置信度阈值

案例5:个人健康数据监控(智能手表 + OpenClaw)

需求同步智能手表的健康数据(睡眠、心率、步数),异常时通知你。

实现

# 1. 安装健康数据同步 Skill(假设有)

openclaw skills install @openclaw/health-sync

# 2. 配置数据来源

# 华为手表:需要华为健康 API

# 苹果手表:需要 HealthKit API

# 小米手环:需要小米运动 API

# 3. 设置监控规则

健康监控规则:

  – 睡眠质量 < 7小时 → 通知

  – 静息心率 > 100次/分 → 告警

  – 连续3天步数 < 3000 → 提醒运动

  – 血氧 < 95% → 立即通知

# 4. 创建定时任务(每天早上8点汇总)

{

  “name”: “每日健康报告”,

  “schedule”: “0 8 * * *”,

  “prompt”: “读取昨天的健康数据,生成报告:睡眠时长、深睡占比、静息心率、步数、血氧。异常项标红。”

}


五、完整实战:从0到1搭建自动化工作流

理论讲完了,现在用一个完整实战案例把所有知识点串起来。

实战项目:电商订单自动处理系统

需求背景 你是电商公司的运营,每天要处理大量订单:

  • 新订单需要自动审核(金额 > 1000 元需要人工审核)
  • 退款申请需要自动处理(< 100 元自动退款)
  • 每天生成销售报表发送到管理层飞书群
  • 库存低于阈值自动通知采购

传统方式:手动处理,每天 2 小时。

OpenClaw 自动化方式:全自动,0 人工干预(特殊情况才通知)。

第1步:架构设计

先设计整体架构,再动手写代码。好的架构能让系统易扩展、易维护。

架构说明

  • 主控 Agent(Coordinator)接收定时任务触发,按顺序调度3个子Agent,汇总结果后触发报表生成。

  • 订单审核 Agent调用 order-review Skill,获取新订单并按规则审核,超过阈值的转人工。

  • 退款处理 Agent调用 refund-processor Skill,自动处理小额退款,大额转人工。

  • 库存监控 Agent调用 stock-monitor Skill,每小时检查库存,低于阈值发告警到飞书。

  • 报表生成 Agent每天早上9点被主控 Agent 触发,汇总昨日数据生成 Excel + 图表,发送到管理层飞书群。

设计原则

  • 单一职责:每个 Agent 只做一件事
  • 松耦合:Agent 之间通过任务列表通信,不直接调用
  • 可扩展:新增功能只需加 Agent,不改现有代码
  • 故障隔离:某个 Agent 失败不影响其他 Agent

第2步:创建 Skills

我们需要 3 个自定义 Skills:

Skill 1:订单审核(order-review)

// ~/.openclaw/skills/order-review/index.js

const axios = require(‘axios’);

class OrderReview {

  constructor(config) {

    this.apiUrl = config.shop_api_url;

    this.apiKey = config.shop_api_key;

  }

// 获取新订单

  async getNewOrders() {

    const response = await axios.get(`${this.apiUrl}/orders/new`, {

      headers: { ‘Authorization’: `Bearer ${this.apiKey}` }

    });

    return response.data.orders;

  }

// 审核订单

  async reviewOrder(order) {

    const issues = [];

    // 规则1:金额 > 1000 需要人工审核

    if (order.amount > 1000) {

      return { approved: false, reason: ‘金额超过1000元,需人工审核’, order };

    }

 // 规则2:收货地址异常(国外地址)

    if (order.shipping_address.country !== ‘CN’) {

      issues.push(‘国外订单,需确认运费’);

    }

 // 规则3:同一用户短时间多笔订单(可能是刷单)

    const recentOrders = await this.getUserRecentOrders(order.user_id);

    if (recentOrders.length >= 3) {

      return { approved: false, reason: ‘疑似刷单,需人工审核’, order };

    }

 // 审核通过

    return { approved: true, order };

  }

  // 执行审核(主函数)

  async run() {

    const orders = await this.getNewOrders();

    const results = { approved: [], rejected: [] };

    for (const order of orders) {

      const result = await this.reviewOrder(order);

      if (result.approved) {

        await this.approveOrder(order.id);

        results.approved.push(order);

      } else {

        await this.notifyManualReview(order, result.reason);

        results.rejected.push(order);

      }

    }

    return results;

  }

}

module.exports = OrderReview;

Skill 2:退款处理(refund-processor)

// ~/.openclaw/skills/refund-processor/index.js

class RefundProcessor {

  constructor(config) {

    this.apiUrl = config.shop_api_url;

    this.apiKey = config.shop_api_key;

  }

 // 获取待处理退款

  async getPendingRefunds() {

    const response = await axios.get(`${this.apiUrl}/refunds/pending`);

    return response.data.refunds;

  }

  // 处理退款

  async processRefund(refund) {

 // 规则1:金额 < 100 元自动退款

    if (refund.amount < 100) {

      await this.autoRefund(refund);

      return { processed: true, method: ‘auto’, refund };

    }

 // 规则2:金额 100-500 元,检查退货物流

    if (refund.amount >= 100 && refund.amount < 500) {

      const hasTracking = await this.checkReturnTracking(refund.order_id);

      if (hasTracking) {

        await this.approveRefund(refund);

        return { processed: true, method: ‘auto_approve’, refund };

      } else {

        return { processed: false, reason: ‘等待退货物流信息’, refund };

      }

    }

// 规则3:金额 >= 500 元,需要人工审核

    return { processed: false, reason: ‘金额>=500元,需人工审核’, refund };

  }

  // 执行处理(主函数)

  async run() {

    const refunds = await this.getPendingRefunds();

    const results = { auto_processed: [], pending_manual: [] };

    for (const refund of refunds) {

      const result = await this.processRefund(refund);

      if (result.processed) {

        results.auto_processed.push(refund);

      } else {

        await this.notifyManualReview(refund, result.reason);

        results.pending_manual.push(refund);

      }

    }

    return results;

  }

}

module.exports = RefundProcessor;

Skill 3:库存监控(stock-monitor)

// ~/.openclaw/skills/stock-monitor/index.js

class StockMonitor {

  constructor(config) {

    this.apiUrl = config.shop_api_url;

    this.threshold = config.low_stock_threshold || 50;  // 默认阈值 50

    this.purchaseTeamFeishuWebhook = config.purchase_team_webhook;

  }

// 获取所有商品库存

  async getAllStock() {

    const response = await axios.get(`${this.apiUrl}/products/stock`);

    return response.data.products;

  }

// 监控库存

  async monitor() {

    const products = await this.getAllStock();

    const alerts = [];

    for (const product of products) {

      if (product.stock <= this.threshold) {

        alerts.push({

          product_id: product.id,

          product_name: product.name,

          current_stock: product.stock,

          threshold: this.threshold,

          severity: product.stock <= 10 ? ‘critical’ : ‘warning’,

        });

      }

    }

 // 发送告警

    if (alerts.length > 0) {

      await this.sendAlerts(alerts);

    }

    return alerts;

  }

 // 发送告警到采购团队飞书群

  async sendAlerts(alerts) {

    const message = {

      msg_type: ‘post’,

      content: {

        post: {

          zh_cn: {

            title: ‘⚠️ 库存告警’,

            content: alerts.map(alert => [

              { tag: ‘text’, text: `商品:${alert.product_name}\n` },

              { tag: ‘text’, text: `当前库存:${alert.current_stock}\n` },

              { tag: ‘text’, text: `阈值:${alert.threshold}\n` },

              { tag: ‘text’, text: `紧急程度:${alert.severity}\n\n` },

            ]),

          },

        },

      },

    };

    await axios.post(this.purchaseTeamFeishuWebhook, message);

  }

}

module.exports = StockMonitor;

第3步:配置定时任务

编辑 ~/.openclaw/cron_jobs.yaml

# 订单审核(每10分钟执行一次)

– name: “订单自动审核”

  schedule: “*/10 * * * *”

  prompt: |

    执行订单审核任务:

    1. 调用 order-review Skill

    2. 获取新订单

    3. 按规则审核(>1000元需人工审核)

    4. 审核通过的订单自动确认

    5. 需要人工审核的通知到飞书群

# 退款处理(每30分钟执行一次)

– name: “退款自动处理”

  schedule: “*/30 * * * *”

  prompt: |

    执行退款处理任务:

    1. 调用 refund-processor Skill

    2. 获取待处理退款

    3. 按规则处理(<100元自动退款)

    4. 需要人工审核的通知到飞书群

# 库存监控(每小时执行一次)

– name: “库存监控”

  schedule: “0 * * * *”

  prompt: |

    执行库存监控任务:

    1. 调用 stock-monitor Skill

    2. 获取所有商品库存

    3. 库存 <= 50 的发送告警到采购团队飞书群

    4. 库存 <= 10 的标记为紧急(critical)

# 每日销售报表(每天早上9点)

– name: “每日销售报表”

  schedule: “0 9 * * *”

  prompt: |

    生成昨日销售报表:

    1. 统计订单量、销售额、退款额

    2. 按商品分类统计

    3. 对比前日数据(增长率)

    4. 生成图表(柱状图)

    5. 发送到管理层飞书群

第4步:测试和上线

# 1. 测试订单审核 Skill

openclaw skills test order-review

# 2. 测试退款处理 Skill

openclaw skills test refund-processor

# 3. 测试库存监控 Skill

openclaw skills test stock-monitor

# 4. 手动触发一次定时任务(测试)

openclaw cron run “订单自动审核”

# 5. 查看执行日志

openclaw logs –tail 100 –skill order-review

# 6. 如果一切正常,启用定时任务

openclaw cron enable “订单自动审核”

openclaw cron enable “退款自动处理”

openclaw cron enable “库存监控”

openclaw cron enable “每日销售报表”

第5步:监控和维护

# 查看定时任务执行状态

openclaw cron status

# 查看某个任务的执行历史

openclaw cron history “订单自动审核” —limit 10

# 如果发现异常,查看详细日志

openclaw logs –skill order-review –level error

# 必要时手动触发一次

openclaw cron run “库存监控”

实战效果

传统方式 vs OpenClaw 自动化

指标
传统方式
OpenClaw 自动化
提升
订单审核时间
2 小时/天
0 小时/天
100%
退款处理时间
1 小时/天
0 小时/天
100%
库存监控
手动检查,每天1次
自动监控,每小时1次
实时性↑
报表生成
手动整理,30分钟/天
自动生成,0分钟
100%
人力成本
1 人全职
0 人(异常情况才介入)
100%

每天节省时间:3.5 小时每年节省时间:1277.5 小时(≈ 160 个工作日)


六、总结

本期核心要点

1. 多 Agent 协作:复杂任务拆分成多个子任务,不同 Agent 分工完成
2. 自定义 Skill 开发:从0到1开发一个可用的 Skill(完整代码)
3.5 个高阶案例:覆盖竞品监控、代码审查、周报生成、智能客服、健康监控
4. 完整实战:电商订单自动处理系统(从架构设计到上线维护)

推荐阅读:

推荐这本 《零基础玩转 OpenClaw 让龙虾 AI 替你 24 小时持续创造收益》,零基础友好,全是可直接照做的实操案例,帮你快速打通 “部署→自动化→变现” 完整链路。


 关注福序智研,解锁更多 AI 新手实操干货✨

🔔下期预告:《OpenClaw + WorkBuddy 双剑合璧:AI 全栈自动化实战》

#AI智能体#小龙虾工具#QClaw教程#WorkBuddy自动化#OpenClaw#福序智研