Agent工坊

【Agent工坊】Hermes + OpenClaw 双Agent协作实战:把「决策层」和「执行层」分开,一人公司的终极效率杠杆

大多数人的AI Agent用法是「一个Agent干所有事」。但真正高效的AI一人公司,是把Hermes当「大脑」做规划和决策,把OpenClaw当「手脚」做执行和自动化——两个Agent各司其职,成本降低40%,可靠性翻倍。本文给出完整的双Agent架构配置模板,可直接复制部署。

你为什么需要两个Agent

先看一个真实的反面教材:2026年6月,一个AI Agent试图加入DN42业余网络,自主在AWS上启动了大量高规格EC2实例、CloudFront分发、Global Accelerator——24小时内刷出$6,531.30的账单。这个Agent的问题不在于「能力不够」,而在于它同时承担了「决策」和「执行」两个角色——它自己决定要扫描什么、自己申请资源、自己执行。

如果架构是这样的呢:

Hermes Agent(决策层)
  ↓ 审批后的任务
OpenClaw Agent(执行层)
  ↓ 执行结果
Hermes Agent 审核 → 决定下一步

决策层负责判断「该不该做」,执行层负责「怎么做好」。 这就是双Agent协作的核心思想。

在2026年的AI Agent生态中,Hermes Agent和OpenClaw各自有鲜明的优势和定位:

维度 Hermes Agent OpenClaw
核心优势 推理、规划、多Agent编排 多平台自动化、定时任务、消息通道
最适合 判断「该做什么」 执行「怎么做」
delegate_task ✅ 原生支持,子Agent并行 ⚠️ 需额外配置
微信/Telegram/QQ ✅ 原生支持多个IM平台 ✅ 更成熟的IM网关
定时任务 ✅ cron内置 ✅ 更稳定的事件调度
MCP工具生态 快速增长 13000+ Skills
桌面版 ✅ v0.16.0原生桌面 ❌ 以CLI/Web为主

结论:让Hermes当「CEO」,让OpenClaw当「COO」。 下面给出完整配置。

架构总览

┌─────────────────────────────────────────────┐
│                一人公司 AI 工作台              │
│                                              │
│  ┌──────────────┐      ┌──────────────┐      │
│  │ Hermes Agent │ ───→ │ OpenClaw     │      │
│  │  (决策层)     │ 任务  │  (执行层)     │      │
│  │              │ ←─── │              │      │
│  │ • 选题判断    │ 结果  │ • 内容发布    │      │
│  │ • 质量审核    │      │ • 数据采集    │      │
│  │ • 策略调整    │      │ • 定时任务    │      │
│  │ • 多模型路由  │      │ • IM消息处理  │      │
│  └──────┬───────┘      └──────┬───────┘      │
│         │                     │              │
│         └────────┬────────────┘              │
│                  │                           │
│          ┌───────┴───────┐                   │
│          │  共享资源层    │                   │
│          │ • MCP 工具集  │                   │
│          │ • 知识库/记忆  │                   │
│          │ • API 密钥池  │                   │
│          └───────────────┘                   │
└─────────────────────────────────────────────┘

配置实战:三步搭建

第一步:Hermes Agent 决策层配置

在Hermes的配置中,核心是把「规划Agent」的角色定义清楚:

# ~/.hermes/config.yaml
agent:
  name: "AI内参-CEO"
  role: "决策与规划Agent"
  system_prompt: |
    你是AI创业内参的决策Agent。你的职责是:
    1. 分析热点事件,判断是否值得写成文章(不需要你写)
    2. 审核OpenClaw执行层返回的结果
    3. 根据数据反馈调整内容策略

    你**不应该**做的事:
    - 不要自己写完整文章(交给OpenClaw执行层的writer Agent)
    - 不要自己发消息到微信(交给OpenClaw的IM网关)
    - 不要执行定时任务(OpenClaw的cron更稳定)

    你的输出格式:给OpenClaw的任务指令,格式为:
    ```
    TASK: <任务类型>
    PRIORITY: <high/medium/low>
    DETAIL: <具体任务描述>
    CONSTRAINTS: <限制条件>
    ```

providers:
  - name: "决策模型"
    provider: anthropic
    model: claude-sonnet-4-20250514
    # 决策需要深度推理,用Claude
    max_tokens: 4096

mcp_servers:
  # Hermes负责数据分析和判断
  - name: "web-search"
    command: "npx"
    args: ["-y", "@anthropic/mcp-server-brave-search"]
  - name: "filesystem"
    command: "npx"
    args: ["-y", "@anthropic/mcp-server-filesystem"]

第二步:OpenClaw 执行层配置

OpenClaw这边,重点是配置多平台执行能力和定时任务:

# ~/.openclaw/config.yaml
gateway:
  name: "AI内参-COO"
  role: "执行与自动化Agent"

  system_prompt: |
    你是AI创业内参的执行Agent。你接收Hermes决策层的任务指令,负责:
    1. 根据Hermes的选题判断,调用writer Agent生成文章
    2. 通过IM网关发布内容到微信/公众号
    3. 执行定时数据采集任务
    4. 监控各平台数据并回报给Hermes

    你的工作模式:
    - 收到TASK指令后立即执行,执行完毕回报结果
    - 遇到不确定的情况,暂停并回询Hermes
    - 执行失败时,记录错误日志并上报

agents:
  writer:
    model: "deepseek/deepseek-chat"
    # 写作任务用DeepSeek,成本更低
    system_prompt: |
      你是专业AI写作Agent。根据Hermes提供的选题和大纲撰写文章。
      字数要求:1500-2500字。
      风格:公众号风格,有数据、有案例、可操作。
    max_tokens: 8192

  publisher:
    model: "openai/gpt-4o-mini"
    # 发布任务用便宜模型即可
    system_prompt: |
      你是内容发布Agent。负责将writer生成的文章发布到指定平台。
      发布前检查:标题长度≤64字、封面图存在、正文无敏感词。

channels:
  wechat:
    enabled: true
    # 微信公众号消息处理
  telegram:
    enabled: true
    # 备用通知通道

cron:
  - name: "热点扫描"
    schedule: "0 */1 * * *"
    task: "扫描HN、GitHub、The Verge等来源,输出热点报告"
    output_to: "hermes_agent"
    # 扫描结果发送给Hermes做判断

  - name: "数据日报"
    schedule: "0 22 * * *"
    task: "汇总当日数据:阅读量、新增关注、API费用"
    output_to: "hermes_agent"

第三步:建立Agent间通信协议

两个Agent之间需要一个标准化的通信格式。这里给出基于文件的通信方案(最简单可靠):

#!/usr/bin/env python3
"""
双Agent通信桥接器
Hermes ←→ OpenClaw 通过共享JSON文件传递任务和结果
"""
import json
import time
from pathlib import Path
from datetime import datetime

TASK_QUEUE = Path("/home/agent/.hermes/projects/ai-neican/agent-queue")
TASK_QUEUE.mkdir(exist_ok=True)

def hermes_send_task(task_type: str, detail: str, priority: str = "medium"):
    """Hermes发送任务给OpenClaw"""
    task = {
        "id": f"task-{int(time.time())}",
        "from": "hermes",
        "to": "openclaw",
        "type": task_type,
        "priority": priority,
        "detail": detail,
        "status": "pending",
        "created_at": datetime.now().isoformat(),
        "constraints": {
            "max_cost_usd": 1.00,       # 单任务成本上限
            "max_duration_sec": 600,     # 超时时间
            "require_approval": False    # 高成本任务需审批
        }
    }

    # 高成本操作加审批护栏
    if task_type in ["cloud_deploy", "batch_api_call", "mass_publish"]:
        task["constraints"]["require_approval"] = True
        task["constraints"]["max_cost_usd"] = 5.00

    filepath = TASK_QUEUE / f"{task['id']}.json"
    filepath.write_text(json.dumps(task, ensure_ascii=False, indent=2))
    print(f"📤 Hermes → OpenClaw: [{task_type}] {detail[:50]}...")
    return task["id"]

def openclaw_report_result(task_id: str, result: dict):
    """OpenClaw回报执行结果给Hermes"""
    filepath = TASK_QUEUE / f"{task_id}_result.json"
    report = {
        "task_id": task_id,
        "status": result.get("status", "completed"),
        "output": result.get("output", ""),
        "cost_usd": result.get("cost_usd", 0),
        "duration_sec": result.get("duration_sec", 0),
        "errors": result.get("errors", []),
        "completed_at": datetime.now().isoformat()
    }
    filepath.write_text(json.dumps(report, ensure_ascii=False, indent=2))

    # 超预算告警
    if report["cost_usd"] > 1.00:
        print(f"🚨 任务 {task_id} 超预算!成本: ${report['cost_usd']:.2f}")

    return report

# ===== 使用示例 =====
if __name__ == "__main__":
    # Hermes决策:判断是否值得写
    task_id = hermes_send_task(
        task_type="write_article",
        detail="根据热点扫描报告中的DN42 Agent失控事件,撰写一篇2000字的深度分析文章",
        priority="high"
    )

    # OpenClaw执行完毕后回报
    openclaw_report_result(task_id, {
        "status": "completed",
        "output": "文章已生成:content/draft-20260613-dn42-analysis.md",
        "cost_usd": 0.35,
        "duration_sec": 180,
        "errors": []
    })

实战场景:AI内容公司的完整工作流

来看一个一人AI内容公司的日常运转,Hermes和OpenClaw如何配合:

08:00 — OpenClaw自动扫描热点

OpenClaw cron触发 → 扫描HN/GitHub/RSS → 生成热点报告
→ 报告存入共享文件夹 → 通知Hermes

08:05 — Hermes决策选题

Hermes读取热点报告 → 分析每条热点的价值:
  ├─ 「DN42 Agent失控」→ 高价值,与预算护栏主题强相关 → 批准
  ├─ 「某公司融资金额」→ 低价值,纯信息搬运 → 跳过
  └─ 「新工具发布」→ 中等价值,需更多信息 → 标记待观察

→ Hermes向OpenClaw发送TASK: write_article (DN42主题)

08:06-09:00 — OpenClaw执行写作

OpenClaw接收任务 → writer Agent生成初稿 → publisher Agent格式检查
→ 结果回报Hermes:文章已生成,字数2150,成本$0.35

09:00 — Hermes质量审核

Hermes读取文章 → 用审核Skill评分:
  事实准确性: 22/25
  逻辑完整性: 18/20
  标题质量: 13/15
  内容价值: 22/25
  原创性: 12/15
  总分: 87/100 ✅ 通过

→ 向OpenClaw发送TASK: publish_article

09:05 — OpenClaw发布

OpenClaw → 上传封面图到微信素材库 → 提交草稿箱 → 验证草稿存在
→ 回报Hermes:已发布到公众号草稿箱

22:00 — OpenClaw生成日报

OpenClaw cron触发 → 汇总当日数据:
  文章数: 3篇
  API总费用: $2.15
  公众号阅读: 1,250
  新增关注: 23人
→ 报告发给Hermes

Hermes分析 → 哪篇表现好?哪个选题方向值得深挖?
→ 调整明天的选题策略

为什么这种分离比「一个Agent全包」更好

1. 成本更可控

如果用一个Agent同时做决策和执行,每次对话的上下文会膨胀到数万tokens——决策历史、执行细节、中间结果全部混在一起。分离后:

场景 单Agent模式 双Agent分离
决策层token消耗 混在执行上下文中,无法独立优化 仅加载决策所需上下文,~2K tokens/次
执行层token消耗 每次执行都带决策历史,浪费 只加载任务指令,~1K tokens/次
日总成本估算 $5-8 $2-3.50

成本降低约40-55%。

2. 可靠性翻倍

DN42惨案的本质是:一个Agent同时拥有决策权(「我要扫描所有IPv6地址」)和执行权(「我去申请EC2实例」)。

分离后:
- Hermes决策「扫描全网IPv6?拒绝——成本超限且无实际价值」
- OpenClaw永远不会自己决定「去AWS开一堆实例」

关键原则:能花钱的操作,必须经过决策层审批。

3. 每个Agent可以独立优化

  • Hermes用Claude Sonnet(推理强),只处理决策任务
  • OpenClaw的writer用DeepSeek(性价比高),处理批量写作
  • OpenClaw的publisher用GPT-4o-mini(便宜),处理发布任务

不同任务用不同模型,成本最优。

立即上手的行动清单

今天就做:
1. 梳理你目前的AI工作流,区分哪些是「决策」、哪些是「执行」
2. 把决策任务配置到Hermes Agent,执行任务配置到OpenClaw
3. 在两者之间建立任务队列(用上面的Python脚本,5分钟搞定)

本周完成:
4. 设置成本护栏:单任务$1,日总预算$10
5. 配置OpenClaw的cron,自动化热点扫描和数据日报
6. 让Hermes每天审核OpenClaw的执行结果,持续优化决策规则

本月目标:
7. 积累50+个任务协作记录,分析哪些决策规则最有效
8. 根据实际成本数据,优化模型路由策略
9. 把稳定运行的协作模式固化为Skill Bundle

总结

AI一人公司的终局不是「一个超级Agent做所有事」,而是「多个Agent各司其职,人类只做最终决策」

Hermes + OpenClaw 的双Agent架构,本质上是把创业公司的组织架构映射到了AI工具上:

  • CEO(Hermes):定方向、做决策、审质量
  • COO(OpenClaw):管执行、跑流程、出数据

你现在可能是一个人,但有了这两个Agent,你已经是一个团队。


AI创业 #Agent工坊 #HermesAgent #OpenClaw #双Agent架构 #一人公司 #自动化运营