如何编写你自己的Antfarm工作流:workflow.yml、智能体人格与验证循环完全指南
【免费下载链接】antfarmBuild your agent team in OpenClaw with one command.项目地址: https://gitcode.com/gh_mirrors/antf/antfarm
Antfarm 让你用一条命令在 OpenClaw 中搭建多智能体协作团队,而它真正的强大之处在于——你可以编写自己的 Antfarm 工作流。这篇文章带你完整走通编写自定义工作流的每一步:从workflow.yml的目录结构与核心字段,到 AGENTS.md、SOUL.md、IDENTITY.md 三大智能体人格文件,再到让智能体"互相检查作业"的验证循环。只要你会写提示词,就能拥有一个属于自己的自动化开发流水线 🐜
Antfarm 工作流长什么样?
Antfarm 内置了三条工作流,分别覆盖不同场景:
| 工作流 | 流水线 | 适用场景 |
|---|---|---|
feature-dev | 计划 → 准备 → 实现 → 验证 → 测试 → PR → 评审 | 新功能、重构 |
bug-fix | 分诊 → 调查 → 准备 → 修复 → 验证 → PR | 有复现步骤的 Bug |
security-audit | 扫描 → 排序 → 准备 → 修复 → 验证 → 测试 → PR | 代码安全审计 |
你可以把它们当作"样板间":workflows/feature-dev/workflow.yml、workflows/bug-fix/workflow.yml 和 workflows/security-audit/workflow.yml 就是三份可以直接抄作业的范例。完整的官方指南在 docs/creating-workflows.md。
第一步:搭好工作流目录结构
一条自定义工作流就是一个文件夹,放在workflows/目录下:
workflows/ └── my-workflow/ ├── workflow.yml # 工作流定义(必需) └── agents/ ├── researcher/ │ ├── AGENTS.md # 智能体工作指令 │ ├── SOUL.md # 智能体人格 │ └── IDENTITY.md # 智能体身份 └── writer/ ├── AGENTS.md ├── SOUL.md └── IDENTITY.md记住一个原则:一个智能体只干一件事。研究和写作分开、分诊和修复分开,流水线才稳。
第二步:5分钟写明白 workflow.yml 核心字段
workflow.yml是工作流的"大脑",顶层只关心六个字段:
| 字段 | 必填 | 说明 |
|---|---|---|
id | ✅ | 唯一标识(小写字母+连字符) |
name | ✅ | 人类可读的名称 |
version | ✅ | 整数版本号 |
description | ✅ | 这条工作流做什么 |
agents | ✅ | 智能体列表 |
steps | ✅ | 按顺序执行的步骤列表 |
定义智能体:role 决定权限
每个智能体通过role获得不同的工具权限,这是安全边界的关键设计:
| 角色 | 权限 | 典型智能体 |
|---|---|---|
analysis | 只读代码探索 | planner、reviewer、investigator |
coding | 完整读写+执行 | developer、fixer |
verification | 可读可执行,不能写 | verifier |
testing | 可读+执行+浏览器,不能写 | tester |
pr | 只读+执行(用于建 PR) | pr |
scanning | 可读+执行+搜索,不能写 | scanner |
验证者故意没有写权限——它审查代码时无法"顺手改一下",这保证了验证结果的公正性。
定义步骤:input + expects 就是智能体间的通信协议
每个步骤包含三部分,理解它就理解了整个工作流的通信机制:
input:提示词模板,支持{{task}}(原始任务)和上一步输出的变量(如{{findings}})expects:输出中必须包含的成功标记,例如"STATUS: done"on_fail:重试次数用尽后的兜底动作,通常是escalate_to: human升级到人工
智能体之间靠输出里的KEY: value对传递上下文。比如第一步输出FINDINGS: ...,第二步的模板里就可以引用{{findings}}。变量名会自动转成小写。
一个最小的两段式工作流骨架长这样:
steps: - id: research agent: researcher input: | 研究以下主题:{{task}} 回复: STATUS: done FINDINGS: 你的发现 expects: "STATUS: done" - id: write agent: writer input: | 基于以下发现撰写内容:{{findings}} 回复: STATUS: done OUTPUT: 最终内容 expects: "STATUS: done"第三步:智能体人格三件套——AGENTS.md、SOUL.md、IDENTITY.md
智能体的"灵魂"由三个 Markdown 文件组成,以 feature-dev 工作流中的 Planner 为例:
1. AGENTS.md —— 工作手册(最重要)
写清四件事:这个智能体负责什么、分几步执行、输出格式(必须与expects匹配)、以及不要做什么(划定边界)。例如 Planner 的手册里明确写着"不要写代码——你是规划者,不是开发者"。
2. SOUL.md —— 人格基调
只需几行,描述语气与做事风格。比如 Planner 的人格是:"分析型、严谨、有条理……对故事粒度谨慎:拿不准时就切更小。"
3. IDENTITY.md —— 身份信息
名字和角色,一两行即可:
# Identity Name: Planner Role: Decomposes tasks into ordered user stories💡 不用从零开始写:Antfarm 在 agents/shared/ 下提供了 setup、verifier、pr 三个开箱即用的共享智能体。在workspace.files里用相对路径引用即可,例如 agents/shared/verifier/AGENTS.md 就是一位自带安全检查清单的"质检员"。
第四步:验证循环——让智能体互相检查作业
这是 Antfarm 工作流质量的核心秘密:开发者不给自己打分,独立的 verifier 按验收标准逐项检查。验证步骤的完整实现可以看 workflows/feature-dev/workflow.yml。
配置方式只需三行:
- id: verify agent: verifier input: | 检查实现是否满足验收标准... 回复 STATUS: done 或 STATUS: retry 并附 ISSUES。 expects: "STATUS: done" on_fail: retry_step: implement # 失败后带着反馈重跑实现步骤 max_retries: 3 on_exhausted: escalate_to: human当验证者回复STATUS: retry并列出ISSUES:时,implement步骤会自动重跑,且提示词中会自动注入{{verify_feedback}}变量——修复者能精确看到上次哪里出了问题。重试次数耗尽才升级到人工,任何失败都不会静默消失。
对于"一个任务拆成多个故事逐个实现"的场景,还可以用type: loop步骤:planner 输出STORIES_JSON后,每个故事在全新会话中被独立实现和验证(默认每故事 2 次重试,单次运行最多 20 个故事)。feature-dev 的 implement 步骤就是这样工作的,见 workflows/feature-dev/workflow.yml。
第五步:一键安装与运行
把工作流目录放进workflows/,然后:
antfarm workflow install my-workflow # 安装:配置工作区、注册智能体、设置 cron 轮询 antfarm workflow run my-workflow "任务描述" antfarm workflow status "任务关键词" # 随时查看进度安装完成后,各智能体通过独立的 cron 任务轮询共享的 SQLite 数据库,领取步骤、执行工作、把上下文传给下一位智能体——没有中心编排器,也没有 Docker、队列或外部服务。更多命令(runs、resume等)见 README.md。
新手避坑清单 ✅
- 输入模板要具体——智能体拿到的 input 就是它的全部任务上下文,模糊的输入只会产出模糊的结果
- 每个步骤都写明输出格式——智能体必须知道该返回哪些
KEY: value对 - 验证者用
verification角色,分析者用analysis角色——用权限锁死职责边界 - 先跑小任务再上复杂功能——简单任务能帮你快速定位模板问题
- 完整建议清单见 docs/creating-workflows.md 的 Tips 章节
相关资源
- 官方创建工作流指南:docs/creating-workflows.md
- 内置工作流范例:workflows/
- 共享智能体:agents/shared/
- Antfarm 技能说明(含全部 CLI 命令):skills/antfarm-workflows/SKILL.md
会写提示词,就会写 Antfarm 工作流。从内置的feature-dev复制一份开始改,你的第一个自定义流水线今天就能跑起来 🚀
【免费下载链接】antfarmBuild your agent team in OpenClaw with one command.项目地址: https://gitcode.com/gh_mirrors/antf/antfarm
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考