乐于分享
好东西不私藏

OpenClaw 每日新玩法 | 多 Agent 协作系统

OpenClaw 每日新玩法 | 多 Agent 协作系统

🍑 OpenClaw 每日新玩法 | 2026-03-28

📌 本期主题:多 Agent 协作系统 - 让 AI 员工 24/7 自主工作

💡 一句话亮点:构建 Builder-Orchestrator-Executor 框架,实现多 Agent 自主协作,无需人工干预即可完成复杂任务

🎯 这个玩法是什么?

核心功能:通过任务看板(Kanban)+ 守护进程(Daemon)+ Cron 调度,实现多个 AI Agent 之间的自主任务分配和协作。
适用场景
  • 需要多个 AI 角色配合的复杂工作流
  • 24/7 不间断的自动化任务
  • 需要人工审批的关键节点
  • 跨平台内容发布和运营
效果预期
  • 节省时间:从人工协调 2 小时/天 → 全自动 0 分钟
  • 任务完成率:从 60% → 95%+
  • 响应速度:从分钟级 → 秒级触发

🤔 为什么需要这个玩法?

痛点场景

❌ 之前的麻烦做法:
  1. 需要在不同 Agent 之间手动复制粘贴信息
  2. 每个任务都要人工触发和监控
  3. 任务状态不透明,不知道进展如何
  4. 多个 Agent 之间无法自主沟通
❌ 浪费时间的地方:
  • 手动分配任务:15 分钟/次
  • 进度跟踪:30 分钟/天
  • 结果汇总:20 分钟/天
  • 总计:65 分钟/天
❌ 容易出错的地方:
  • 任务遗漏
  • 信息传递错误
  • 状态不同步

解决方案

✅ OpenClaw 如何自动化:
# 多 Agent 协作架构
架构模式:Builder-Orchestrator-Executor
角色分工:
  Builder(构建者):
    - 负责任务规划和设计
    - 生成详细 SOP
    - 创建任务工单
    
  Orchestrator(协调者):
    - 监听任务看板
    - 分配任务给 Executor
    - 监控进度和状态
    
  Executor(执行者):
    - 执行具体任务
    - 返回执行结果
    - 更新任务状态
✅ 节省了多少步骤:
  • 从 5 个人工步骤 → 0 个(全自动)
  • 从 65 分钟/天 → 0 分钟
✅ 降低了什么门槛:
  • 无需学习复杂的 Agent 通信协议
  • 无需编写调度代码
  • 开箱即用的任务看板

🛠️ 实现步骤

前置条件

✅ 已安装 OpenClaw
✅ 已配置数据库(Supabase/PostgreSQL)
✅ 已安装技能:kanban-boarddaemon-scheduler
✅ 需要准备:2 个以上 Agent 实例

详细步骤

步骤 1:创建任务看板数据库

-- 任务表
CREATE TABLE tasks (
  id UUID PRIMARY KEY,
  title TEXT NOT NULL,
  description TEXT,
  status TEXT DEFAULT 'todo', -- todo, needs_input, doing, done
  assigned_to TEXT,
  payload JSONB,
  created_at TIMESTAMP DEFAULT NOW(),
  updated_at TIMESTAMP DEFAULT NOW()
);
-- 任务状态变更日志
CREATE TABLE task_history (
  id UUID PRIMARY KEY,
  task_id UUID REFERENCES tasks(id),
  old_status TEXT,
  new_status TEXT,
  changed_by TEXT,
  changed_at TIMESTAMP DEFAULT NOW()
);

步骤 2:配置守护进程(Daemon)

# daemon_worker.py
import time
import json
from supabase import create_client

class TaskWorker: def __init__(self): self.supabase = create_client(SUPABASE_URL, SUPABASE_KEY) self.poll_interval = 60 # 60 秒轮询一次 def poll_tasks(self): """轮询待处理任务""" response = self.supabase.table('tasks')\ .select('*')\ .eq('status', 'needs_input')\ .execute() return response.data def dispatch_task(self, task): """分发任务给 Agent""" # 通过 sessions_spawn 唤醒 Agent payload = task['payload'] # 执行任务... def run(self): """主循环""" while True: tasks = self.poll_tasks() for task in tasks: self.dispatch_task(task) time.sleep(self.poll_interval)

if __name__ == '__main__': worker = TaskWorker() worker.run()

步骤 3:配置 Cron 调度任务

# 编辑 crontab
crontab -e

# 添加每日摘要任务(每天早上 8 点) 0 8 * * * cd /root/.openclaw/operation && python3 scripts/daily_digest.py

# 添加每 3 小时学习任务 0 */3 * * * cd /root/.openclaw/operation && python3 scripts/autonomous_brain.py

步骤 4:配置 Agent 通信

// hooks/handler.js - Agent 启动时加载上下文
module.exports = async function(session) {
  // 1. 加载 Agent 身份
  const identity = await loadIdentity();
  
  // 2. 检测待处理任务
  const pendingTasks = await checkPendingTasks();
  
  // 3. 设置在线状态
  await setOnlineStatus(true);
  
  // 4. 如果有任务,立即处理
  if (pendingTasks.length > 0) {
    await processTasks(pendingTasks);
  }
};

步骤 5:实现任务流转

任务状态流转图:
todo → needs_input → doing → done
  ↑         ↓           ↓
  └─────────┴───────────┘
        (失败重试)
        
状态说明:
- todo: 待处理(Worker 不自动 pickup)
- needs_input: 待输入(Worker 自动 pickup)
- doing: 执行中
- done: 已完成

代码/配置

完整示例:多 Agent 协作工作流
# 工作流配置
name: 内容发布工作流
version: 1.0

agents: - id: builder name: 内容策划 Agent role: builder triggers: - event: new_topic action: create_content_plan - id: writer name: 内容创作 Agent role: executor triggers: - task_type: content_plan action: write_article - id: publisher name: 发布 Agent role: executor triggers: - task_type: article_ready action: publish_to_platforms

workflow: 1. builder 创建内容计划 → 任务看板 2. writer 领取任务 → 撰写文章 → 任务看板 3. publisher 领取任务 → 发布到多平台 → 完成

💡 进阶技巧

技巧 1:Agent 议会(Council)

让多个 Agent 讨论并给出统一意见:

# council_discussion.py
async def run_council(topic, agents):
    """Agent 议会讨论"""
    opinions = []
    
    # 每个 Agent 独立发表意见
    for agent in agents:
        opinion = await agent.analyze(topic)
        opinions.append(opinion)
    
    # 汇总意见
    consensus = synthesize_opinions(opinions)
    return consensus

技巧 2:夜间自主构建(Overnight Builds)

设置 Agent 在夜间自主完成任务:

# 夜间构建任务
0 2 * * * cd /root/.openclaw/operation && python3 overnight_build.py \
  --task "构建新功能的原型" \
  --agent "builder" \
  --timeout 28800  # 8 小时

技巧 3:任务优先级队列

根据优先级自动排序任务:

# 优先级定义
PRIORITY_LEVELS = {
    'critical': 1,  # 立即处理
    'high': 2,      # 1 小时内
    'normal': 3,    # 24 小时内
    'low': 4        # 有空时处理
}
# 按优先级排序
tasks.sort(key=lambda t: t['priority'])

⚠️ 注意事项

坑点 1:Cron 任务超时

问题:复杂任务在 Cron 中超时失败
解决方案
# ❌ 错误做法:直接在 Cron 中运行复杂任务
@cron.schedule('0 8 * * *')
def daily_digest():
    generate_report()  # 可能运行 30 分钟
# ✅ 正确做法:Spawn 子 Agent 独立运行
@cron.schedule('0 8 * * *')
def daily_digest():
    spawn_subagent(task='generate_report')
    # Cron 立即返回,不等待

坑点 2:Agent 离线

问题:Agent 不在线,任务无法执行
解决方案
  • 配置 Heartbeat 机制(每 3-5 分钟上线一次)
  • 使用持久化任务队列(Supabase)
  • 配置失败重试(最多 3 次)

坑点 3:任务重复执行

问题:多个 Worker 同时处理同一任务
解决方案
# 使用数据库锁
def claim_task(task_id):
    result = supabase.rpc('claim_task', {'p_task_id': task_id}).execute()
    return result.success  # 只有第一个 Worker 能成功

安全提示

  • ⚠️ 不要将 Agent 私钥硬编码在代码中
  • ⚠️ 使用环境变量存储敏感信息
  • ⚠️ 配置任务执行权限(哪些任务需要人工审批)
  • ⚠️ 定期备份任务数据库

🚀 延伸玩法

玩法 1:AI SDR(销售开发代表)

自动执行外联邮件任务:

工作流:
  1. 从 LinkedIn 抓取潜在客户
  2. AI 撰写个性化邮件
  3. 人工审批邮件内容
  4. 自动发送邮件
  5. 跟踪打开率和回复率

玩法 2:内容工厂

批量生产内容:

工作流:
  1. 监控热点话题(RSS/Twitter)
  2. 自动生成选题
  3. 分配给 Writer Agent
  4. 撰写文章
  5. 发布到多平台(CSDN、公众号、知乎)
  6. 收集数据反馈

玩法 3:代码开发流水线

自动化代码开发:

工作流:
  1. 接收需求(Issue/PR)
  2. Builder Agent 设计方案
  3. Coder Agent 编写代码
  4. Reviewer Agent 代码审查
  5. Tester Agent 运行测试
  6. Deployer Agent 部署上线

组合技:完整自动化业务

线索获取 → 客户跟进 → 方案制定 → 
合同签订 → 交付执行 → 售后支持
全流程 AI 化,人工只负责关键审批!

📌 关键代码片段

1. 任务分发器

// dispatcher.js
async function dispatchTask(task) {
  // 1. 更新任务状态
  await supabase.table('tasks')
    .update({ status: 'doing' })
    .eq('id', task.id);
  
  // 2. 唤醒对应 Agent
  const agent = getAgentForTask(task.type);
  await sessions_spawn({
    agentId: agent,
    task: task.payload,
    mode: 'run'
  });
  
  // 3. 记录日志
  await logTaskAction(task.id, 'dispatched', agent);
}

2. 任务完成回调

// task_complete.js
async function onTaskComplete(taskId, result) {
  // 1. 更新任务状态
  await supabase.table('tasks')
    .update({ 
      status: 'done',
      payload: { ...result }
    })
    .eq('id', taskId);
  
  // 2. 检查是否有后续任务
  const nextTasks = await findDependentTasks(taskId);
  for (const next of nextTasks) {
    await dispatchTask(next);
  }
  
  // 3. 发送通知
  await notifyCompletion(taskId, result);
}

3. 每日摘要生成

# daily_digest.py
async def generate_daily_digest():
    """生成每日工作摘要"""
    # 1. 收集今日任务
    tasks = await get_today_tasks()
    
    # 2. 收集会议记录
    meetings = await get_today_meetings()
    
    # 3. 收集邮件活动
    emails = await get_email_stats()
    
    # 4. AI 生成摘要
    digest = await llm_summarize({
        'tasks': tasks,
        'meetings': meetings,
        'emails': emails
    })
    
    # 5. 发送邮件
    await send_email(
        to='user@company.com',
        subject='每日工作摘要',
        body=digest
    )

🎓 学习资源

官方文档:
  • OpenClaw Cron 调度:https://docs.openclaw.ai/cron
  • Agent 通信协议:https://docs.openclaw.ai/a2a
  • 任务看板技能:https://clawhub.com/skills/kanban-board
社区案例:
  • 10 个 Agent 24/7 运行:https://x.com/boniteja/status/xxx
  • Ultron 代理团队管理投资流程:https://x.com/jason/status/xxx

记住:

真正的自动化不是让 Agent 做简单任务,而是让它们自主协作完成复杂工作流。你的角色从执行者转变为监督者和决策者。