把 AI Coding Agent 的"错误→修复→不再犯"闭环,固化到项目里的模板。
三个 AI Agent + 一套流程 + 一些命令,帮你把开发需求从分析到部署走完,且每步留痕。
三个 Agent 各司其职,你通过 Tab 键切换:
| Agent | 什么时候切过去 | 它帮你做什么 |
|---|---|---|
| Owner | 拿到新需求时 | 理解需求 → 写 spec → 拆任务 → 维护变更记录 |
| Coder | 确定要写代码了 | 按分层规范编码 → 写单元测试 → 部署验证 |
| Reviewer | 需要查漏补缺时 | 评审方案 → 评审代码 → 评审测试,它改不了代码 |
Pipeline 命令: 在 OpenCode 里敲 / 就能看到可用命令,告诉 AI 当前该做什么。
cp -r ~/code/opencode-harness/{.,}* /path/to/your/project/
cp -r ~/code/opencode-harness/.opencode /path/to/your/project/改这几个文件,把占位符换成真实的:
| 改哪个 | 改什么 | 参考示例 |
|---|---|---|
AGENTS.md 第 3 行 |
{项目名称} 和技术栈 |
Python 3.12 / FastAPI / SQLAlchemy / Celery / Redis |
.opencode/rules/ 下三个文件 |
工程结构、编码规范、开发流程 | 文件里的注释就是示例,照着改 |
wiki/ 下三个文件 |
你的业务链路、数据模型、业务流程 | 不急着填完,遇到需求时再补 |
# 在项目根目录启动 OpenCode
opencode
# 默认进入 Owner Agent。输入:
/analyze-requestAI 会问你这个需求是什么,然后产出 spec.md + tasks.md。按 Tab 切到 Reviewer 评审,再切到 Coder 编码……就这样一站一站走下去。
假设你接了个需求:"给订单列表加一个按日期筛选的功能"。
| 步骤 | 你做什么 | AI 做什么 | 产出物 |
|---|---|---|---|
| 1 | 切到 Owner,敲 /analyze-request,描述需求 |
分析需求 → 产出 spec + tasks | spec.md、tasks.md |
| 2 | 你读一遍 spec,确认没问题 | — | — |
| 3 | 按 Tab 切到 Reviewer,敲 /review-plan |
评审 spec + tasks,提意见 | review_v1.md |
| 4 | 如果评审通过,切到 Coder,敲 /implement |
按分层规范写代码 | 代码变更、coding_report.md |
| 5 | 切到 Reviewer,敲 /review-code |
代码审查 | code_review_v1.md |
| 6 | 如果有 MUST FIX,切回 Coder 修,重复 4-5 | — | — |
| 7 | 切到 Coder,敲 /verify-deploy |
CI 验证 → 更新 summary | ci_report.md、更新后的 summary.md |
| 8 | 你最终确认交付 | — | — |
回退规则: 如果 CI 发现测试为 0 → 自动回退到写测试;编译错误 → 回退到改代码;需求理解错了 → 回退到重做分析。
评审上限: 需求评审最多 3 轮,代码/测试评审最多 2 轮,过了就找你拍板。
.opencode/changes/{YYYYMMDD}-{类型}-{描述}/
├── summary.md ← 整个变更的"档案封面",每步完成后自动更新
├── request_analysis/
│ ├── spec.md ← 需求规格(写什么)
│ ├── tasks.md ← 任务拆解(怎么拆)
│ └── review/review_v1.md ← 需求评审意见(v1, v2...版本递增)
├── coding/
│ ├── coding_report_v1.md ← 编码报告(改了哪些文件)
│ └── review/code_review_v1.md ← 代码评审意见
├── unit_test/ ← 单元测试代码 + 报告
├── ci_result/ ← CI 构建结果
└── deployment/ ← 部署确认
关键文件:summary.md。整个变更的唯一真相源,任何 Agent 接手时先读它,就知道干到哪了。
不用模板 = 每次跟 AI 说一遍项目背景,每轮改完没有记录,改了什么全靠记忆。用模板 = AI 自己读 rules + wiki,每步有产出物,随时可回溯。
不用。rules 给三个示例就行(工程结构、编码规范、开发流程),wiki 遇到需求时再补。模板的精髓是渐进式填充,有坑再补规则。
Tab 键。OpenCode 默认进入 Owner,按 Tab 循环切换 Owner → Coder → Reviewer。
Owner 能做所有事(分析 + 驱动流程),Coder 聚焦编码,Reviewer 改不了文件(write/edit 禁用),只管审查挑毛病。
├── opencode.json # OpenCode 配置
├── AGENTS.md # 项目规则 + Wiki 加载指令
├── .opencode/
│ ├── agents/ # 3 个 Agent 的定义(≈ 岗位说明书)
│ ├── rules/ # 项目规范(待你填充)
│ ├── skills/ # 4 个技能包(Agent 的工作 SOP)
│ ├── commands/ # 7 个 pipeline 命令
│ └── changes/_template/ # 变更目录模板
└── wiki/ # 业务知识库(待你填充)