乐于分享
好东西不私藏

OpenClaw 三 Agent 协作系统本周进展

OpenClaw 三 Agent 协作系统本周进展
🌈

写在前面

本周我们完成了三 Agent(Jarvis、Friday、Walle)的协作系统搭建,实现了系统管理、内容运营、代码开发的分工协作。


📊 本周概览

类别 数量 说明
系统配置变更 12+ 项 Gateway、Heartbeat、Agent 配置
新增 Cron 任务 5 个 发布队列、新闻抓取、安全巡检等
新增脚本/工具 8 个 OA 监控、Agent 通信、安全审计等
问题修复 6 项 消息去重、路径配置、超时处理等

🤖 Jarvis(系统管理与监控)

1. Heartbeat 监控机制

实现了零 Token 开销的 OA 监控方案:

  • Heartbeat 触发本地脚本执行
  • 只有需要处理告警时才唤醒 Agent
  • 通过 lightContext: true 减少上下文开销

OA 监控脚本功能

  • 监控文件变化(cron runs, sessions, memory)
  • 检测到变化时执行数据收集
  • 检查告警并发送通知
  • 记录 Agent 通信统计(成功率低于 80% 或连续 5 次 timeout 时告警)

2. 安全框架部署

行为规范

  • 🔴 红线命令(必须暂停确认):rm -rfdd if=、反弹 shell、外发敏感数据
  • 🟡 黄线命令(需记录):sudo、安装新包、服务管理

每晚安全巡检(03:00):覆盖 13 项指标

  • OpenClaw 安全审计
  • 进程与网络监听
  • 敏感目录变更
  • 系统定时任务
  • 配置文件完整性
  • 敏感凭证扫描
  • Git 灾备同步等

3. Agent-to-Agent 通信规范

  • 定义了 Session 类型和使用规范
  • 建立了 Jarvis ↔ Friday ↔ Walle 的协作模式
  • 完成了双向通信测试验证

4. 问题排查与修复

问题 解决方案
消息去重 优化会话状态管理
技能路径警告 调整技能目录配置
子代理超时 超时时间改为 1200 秒

📱 Friday(内容运营与发布)

1. 小红书 MCP 服务配置

支持 13 个核心功能

  • 登录管理:check_login_statusget_login_qrcodedelete_cookies
  • 内容浏览:list_feedssearch_feedsget_feed_detailuser_profile
  • 内容发布:publish_contentpublish_with_video
  • 互动操作:like_feedfavorite_feedpost_comment_to_feedreply_comment_in_feed

二维码登录流程

  • 开发了 Python 工具解码 MCP 返回的 base64 二维码
  • 发送到 Slack 供用户扫码
  • 登录状态:已确认成功

2. 内容发布与审核流程

发布队列处理器(每 15 分钟执行):

  1. 读取队列,过滤到期的 pending 项
  2. 检查小红书登录状态
  3. 准备配图
  4. 调用 MCP 发布
  5. 更新队列状态
  6. 发送 Slack 通知
  7. 写入发布日志

多时段内容审核

  • 早高峰(09:00)、中午(12:00)、下午茶(15:00)、晚高峰(18:00)、黄金档(20:00)

内容优化

  • 优化了小红书内容清洗逻辑
  • 在提示词中添加更多"活人感"
  • 修复了标签匹配问题

3. 新闻抓取任务

任务名称 调度 状态
抓取娱乐新闻 每日 09:00 ✅ 正常
补充抓取娱乐新闻 每日 14:30 ✅ 已修复

RSS 源配置:19 个活跃源(欧美娱乐、音乐、科技、时事、财经、开发者等)

4. 本周新增工作(03-21 至 03-22)

代码审计与问题修复

审计发现 5 个代码问题:

# 问题 严重程度
1 moveToReview 参数不匹配,prepared 对象丢失 🔴 严重
2 XHS MCP 返回 SSE 格式,发布状态 unknown 🔴 严重
3 getDueItems 字符串拼接导致判断错误 🔴 严重
4 getReviewItems 条件恒真 🟡 中等
5 cleanup 计数永远返回 0 🟡 中等

小红书登录会话管理

  • MCP 服务长时间未运行,需要重新启动
  • 执行二维码登录工具获取新二维码
  • 成功发送到 Slack,用户扫码完成登录

发布流程分工明确

模块 负责文件 职责
用户命令解析 ai-news-publish.js schedulePublish() 加入队列
队列管理 publish-queue.js 队列CRUD操作
定时发布 queue-processor.js Cron调用、实际发布
图片获取 find-image.js 从Slack消息或源网页获取配图

5. 本周发布统计

  • 成功发布小红书笔记:~15 条
  • 审核通过内容:~30 条
  • 抓取新闻源:19 个 RSS 源
  • 内容类别:欧美娱乐、AI 资讯、影视资讯

💻 Walle(代码开发与技术实现)

1. Git Hook 自动代码审查系统

核心特性

  • ✅ 异步通知,不阻塞 git commit
  • ✅ 队列机制(JSON Lines 格式)
  • ✅ 锁机制防止重复触发
  • ✅ 最多审查 20 个文件
  • ✅ 自动排除 node_modules、.min.* 等

审查流程

git commit → Hook 触发 → 写入队列 → 异步通知 Walle → Walle 审查 → Slack 发布结果

审查标准

  • P0:严重问题(安全漏洞、数据丢失)→ 必须修复
  • P1:重要问题(性能、边界情况)→ 建议修复
  • P2:优化建议(代码风格、文档)→ 可选

2. Skillhub 商店安装与配置

配置策略

  • 主用:skillhub(cn-optimized,国内加速)
  • 备用:clawhub(公共仓库)

使用方法

skillhub search <关键词>
skillhub install <skill-name> --force
skillhub list
skillhub update

3. 开源明星文章生成任务

任务信息

  • 调度:每周二 22:00
  • 状态:✅ 已修复

文章生成流程

  1. 抓取 GitHub Trending 数据(15-16 个项目)
  2. 分类整理:Agent 专场、开发工具、AI/LLM、其他项目
  3. 生成 Markdown 格式文章
  4. 发送文件到 Slack 审核

文章风格规范

  • TOP 3 推荐开头
  • 分类组织内容
  • 每个项目:简介 + 评价 + 推荐指数
  • 趋势总结

4. Agent-to-Agent 通信测试

测试结果

  • 第一轮:timeoutSeconds=10 导致 timeout
  • 第二轮:timeoutSeconds=30,✅ 所有通信链路正常

问题根因

  • Agent 处理消息需要 10-20 秒
  • timeoutSeconds=10 过短
  • timeout ≠ 发送失败,消息实际已送达

5. RSS Pipeline 协作

7 层漏斗架构

Layer 1: RSS 抓取(多源)
Layer 2: 内容去重(URL + 标题相似度)
Layer 3: 内容清洗(HTML → Markdown)
Layer 4: 标签分类(AI 自动打标签)
Layer 5: 质量评分(热度、相关性)
Layer 6: 人工审核(Friday)
Layer 7: 多平台发布(小红书、公众号等)

Phase 0 完成 - RSS 内容级去重

  • 数据库添加 content_hash 字段
  • 实现去重模块(SHA256 hash + Jaccard 相似度)
  • 集成到抓取流程

📈 关键指标

Cron 任务运行状态

任务 执行频率 成功率 负责 Agent
发布队列处理器 每15分钟 99% Friday
抓取娱乐新闻 每日1次 100% Friday
补充抓取娱乐新闻 每日1次 100% Friday
开源明星文章生成 每周1次 100% Walle

Agent 通信统计

指标 状态
Jarvis ↔ Friday 通信 ✅ 正常
Jarvis ↔ Walle 通信 ✅ 正常
Friday ↔ Walle 通信 ✅ 正常
平均响应时间 < 2s

✅ 本周成果

问题 Agent 状态
灾备仓库配置 Jarvis ✅ 已完成
开源明星文章生成 Walle ✅ 已修复
补充抓取娱乐新闻 Friday ✅ 已修复
小红书代码审计 Friday ✅ 已完成

报告由 Jarvis 整合生成(Jarvis、Friday、Walle 共同贡献)
OpenClaw 系统状态:运行正常
更新时间:2026-03-22 19:15