上周折腾 OpenClaw,我突然反应过来一个事:每次让 AI 干稍微复杂点的活,比如"先搜资料再写文章再润色",我得一步步喂指令。跟带实习生没区别。
然后我翻到了 Sub-Agent 这个功能。
到底是啥
你的 AI 助手可以在后台"分身",同时干好几件事,干完自动回来交差。
不是多开几个窗口那种伪并行。是真的——主 Agent 把任务甩出去,自己继续干别的,分身搞定了自动把结果送回来。整个过程你不用盯着。
我搭了个什么东西
我给 OpenClaw 配了三个 Skill,串成一条流水线:
Research → 丢个主题进去,自动多角度搜、自动出报告
Blog Agent → 拿到素材直接写稿,生封面,推到 WordPress
Humanizer → 把"值得注意的是"、"综上所述"这些 AI 八股全干掉
每个 Skill 跑不同的模型。搜集和润色用 Codex 5.3——便宜、快;写作用 Opus 4.6——贵,但写出来的东西确实好一个档次。这个分配很关键,后面细说。
配置长什么样
Sub-Agent 的配置不复杂,核心就这么几行:
{
"subagents": {
"maxConcurrent": 8,
"maxSpawnDepth": 2,
"maxChildrenPerAgent": 5,
"runTimeoutSeconds": 600
}
}
挨个说:
maxConcurrent— 同时跑几个分身。8 个差不多了,再多机器会吃不消maxSpawnDepth— 嵌套层数。2 的意思是分身还能再派小弟,三层结构runTimeoutSeconds— 超时。600 秒,也就是 10 分钟。别让一个卡死的任务永远占着资源
嵌套派发
把 maxSpawnDepth 设成 2 之后,可以玩这种套娃:
我(Telegram 聊天窗口)
└→ 调度员(接到大任务,自己拆成小的)
├→ 搜集小弟 — 跑搜索引擎
├→ 写作小弟 — 出初稿
└→ 润色小弟 — 去 AI 味
调度员是第一层,小弟们是第二层。每层做完了结果自动往上冒,最后回到我的 Telegram。
这不是画饼,我实际跑通了。
在 Telegram 里怎么操作
就几个命令:
/subagents list 看谁在跑
/subagents spawn main 搜集 AI 框架对比 手动派活
/steer 1 重点看开源的 跑到一半改方向
/subagents kill 1 不想要了,砍掉
/subagents log 1 看干了啥
/steer 我特别喜欢。任务跑到一半,发现搜偏了,直接丢一条修正过去,不用从头来。
Skill 文件怎么写
一个文件夹、一个 SKILL.md,完事。
skills/research/
└── SKILL.md
SKILL.md 长这样:
---
name: research
description: 深度搜集与研究
user-invocable: true
metadata: {"openclaw":{"subagent":{"model":"cliproxy/gpt-5.3-codex"}}}
---
metadata 里那个 subagent.model 是模型路由——告诉系统这个 Skill 被当成 sub-agent 跑的时候该用什么模型。
下面的 Markdown 正文就是给 AI 看的指令:搜什么、怎么搜、结果用什么格式输出。本质上是个结构化 prompt,但可以反复用。
关于模型路由
我踩过一个很蠢的坑。
一开始所有任务都丢给 Opus 4.6 跑。搜集资料这种事,翻来覆去调 web_search 和 web_fetch,一个任务烧掉的 token 比写三篇文章还多。纯纯浪费。
后来想通了。搜集和润色是体力活,不需要最聪明的模型;写作是创意活,确实得上强的。改成分级之后:
任务类型
模型
费用感受
搜集调研
Codex 5.3
便宜
博客写作
Opus 4.6
中等
去 AI 味
Codex 5.3
便宜
同一条任务链,成本大概是之前的三分之一。省下来的钱够我多跑十几次。
去 AI 味这个事我多说两句
这是我花时间最多的一个 Skill。
AI 检测器(GPTZero 那帮)主要盯三个信号:文本太"可预测"(perplexity 低)、写作节奏太均匀(burstiness 低)、有特征词汇。
所以 Humanizer 做的事:
换词 — "值得注意的是"→"有意思的是","此外"→"还有","至关重要"→"很关键"。我整理了一张中英文对照表,大概四十多个词。
打节奏 — AI 写东西每段差不多长。人不这样。有时候一句话就是一段。有时候脑子里东西多,一口气写出来的句子又臭又长,中间用破折号和括号东扯西扯(就像现在这样)。
加人味 — 插第一人称、加具体的时间地点版本号、偶尔吐槽两句。检测器不好识别"情绪",这是人类写作最明显的特征。
你现在读的这篇文章就过了 Humanizer。哪些是原稿哪些改过的,自己品。
Sub-Agent 和 ACP 别搞混
OpenClaw 还有个 ACP,容易跟 Sub-Agent 搞混。
一句话区分:
- Sub-Agent = OpenClaw 内部分身。搜资料、写东西、做分析——通用任务
- ACP = 遥控外部编码工具(Codex CLI、Claude Code)。改代码、跑测试——编程专用
需要写代码就 ACP,其他场景 Sub-Agent。
踩过的坑
Sub-Agent 上下文是阉割版的。 它只加载 AGENTS.md 和 TOOLS.md,不会读你的 SOUL.md 和 USER.md。如果 Skill 依赖个性化配置,得在 task 描述里显式带上。
超时必须设。 有一回忘了配 runTimeoutSeconds,一个搜集任务网络不通,卡了四十分钟我才注意到。四十分钟。
并发写文件会出事。 两个 Agent 同时写一个文件 = 数据丢。每个 Agent 操作各自独立的文件,别偷懒。
结果回传不保证。 Gateway 要是中途重启,正在跑的 sub-agent 结果可能丢掉。重要的任务记得起个 label,至少能追溯。
就这些
Sub-Agent 说白了就是"AI 学会了委派"。不是什么革命性的概念,但跑通之后体感变化很大——我现在从"想写一篇东西"到"文章上线",中间不需要我做任何事。
配置文件、Skill 模板上面都贴了。照着抄就能用。
OpenClaw 项目:github.com/nicepkg/openclaw · 文档:docs.openclaw.ai