wato12/wato-protocol
GitHub: wato12/wato-protocol
一套从商业产品交付中提炼的 coding-agent 编排协议,通过角色定义、人工关卡和可验证产出物来安全地管理大规模并行 AI 编程会话。
Stars: 0 | Forks: 0
# Wato 协议
**一套经过实战检验的协议,用于在真实商业软件上运行大规模
coding-agent 会话(如 Claude Code 等)——依靠明文规则、严格的人工节点
和可验证的产出物,而非盲目凭感觉。**
**附带示例的 Web 概览:[wato.org/protocol](https://wato.org/protocol)** ·
规则背后的故障复盘:[系列文章](https://wato.org/blog)。
这不是一个框架,也不是一个测试夹具。它是位于它们之上的*方法论层*:
一个人(或一个小团队)如何协调多个并行的 agent 会话 —— master、
executor、独立 review —— 既不会沦为消息总线,也不会迷失在谁在
做什么的混乱中,更不会盲目合入未经核实的工作。
## 一分钟模型
两个命名部分,一套系统:
**协议** —— 一组 agent 会话的运作方式。角色(master / executor /
独立 review / 关卡处的人工)、节点序列(STOP-1 → review → IMPL
→ STOP-2 → 人工 merge)、五项调度规则、任务单/状态通道、
重证明轻声明。它位于 [`protocol/`](protocol/) 中。
**Bridge** —— 项目真相的栖息地。每个项目一个代码仓库
(`-bridge`):基础规则(包含任何任务都不得违反的 §1 不变量的
`AGENT.md`)、任务、决策、规范、简报 —— 且不包含任何业务代码。
完整且可复制的框架位于 [`bridge/`](bridge/) 中。
它们的结合十分简单:协议文档存放在 bridge 的 `development/` 中;每个
agent 会话启动时都会读取该 bridge;整个集群执行工作;bridge 记录最终确立的事实。
**集群向 bridge 汇报。Bridge 受协议约束。**
## 起源
源自实践提炼,而非白板上的空想。本协议被用于交付一款
商用电信安全产品 —— 在开始开发六个月后,于一家移动运营商处上线投入使用
—— 由单人通过 agent 集群负责该项目特定领域部分的运营,
并与经典开发团队并肩作战。此后,它被一个由五名
未参与发明的开发人员组成的团队采用。
**这些文档中的每一条硬性规则,都源于其缺失所引发的真实事件。**
关于这些事件的复盘正作为系列文章发布:[wato.org/blog](https://wato.org/blog)。
## 内容概览 (v0.1)
| 文件 | 功能 |
|---|---|
| [`protocol/ROLES_AND_GATES.md`](protocol/ROLES_AND_GATES.md) | 角色(MASTER / EXECUTOR / REVIEW / DESIGN / human)、节点序列(STOP-1 → review → IMPL → STOP-2 → 人工 merge),以及常设的 HARD 规则 —— 包括 *GREEN ≠ 正确* 和 *断言前必须验证*。 |
| [`protocol/TEAM_WORKFLOW.md`](protocol/TEAM_WORKFLOW.md) | 用通俗语言解说谁负责做什么,并附带一个可直接生成独立对抗性 Review 会话的提示词。 |
| [`protocol/EXECUTOR_DISPATCH_PLAYBOOK.md`](protocol/EXECUTOR_DISPATCH_PLAYBOOK.md) | 五项调度规则(ROLE-LOCK · 标签 = 文件名 · 防止交叉干扰 · 1 个会话 = 1 个任务 · 关闭信号)以及一份可直接复制的 executor 简报模板。 |
| [`protocol/EXECUTOR_ORDER_STATUS_PROCESS.md`](protocol/EXECUTOR_ORDER_STATUS_PROCESS.md) | master 会话与 executor 会话之间被 gitignore 的任务单/状态文件通道。 |
| [`templates/BOARD_TEMPLATE.md`](templates/BOARD_TEMPLATE.md) | master 维护的单页集群状态看板。 |
| [`templates/EXECUTOR_BRIEF_TEMPLATE.md`](templates/EXECUTOR_BRIEF_TEMPLATE.md) | 独立且可直接复制的 executor 简报。 |
| [`bridge/`](bridge/) | **一个完整且可复制的 "bridge" 仓库骨架** —— 项目的指挥面板:包含 §1-不变量规则的 AGENT.md、任务生命周期、ADR 机制、规范、仓库结构图、PR 开启协议。每个部分都附带了一份填好的 `*.example.md`(一个虚构项目),用于展示预期的详细程度。复制它,填充占位符,然后将你的 agent 指向它。 |
## 如何使用
1. 将 [`bridge/`](bridge/) 复制为紧挨着你代码仓库的 `-bridge` —— 项目的
指挥面板:包含需求、决策、任务;无业务代码。
2. 将 `protocol/` 文档放入其 `development/` 目录中。
3. 填充占位符 —— 最重要的是 `AGENT.md` 中的 §1:任何任务都不得违反的
最高不变量。将你的 agent 指向该文件。
4. Master 会话负责规划并编写 executor 简报;你将它们粘贴到新的会话中;
executor 返回带有实际产出物的 STOP-2;review 是对抗性的;**由你**进行 merge。
该协议假设 agent 会按需读取文档(精简的索引、完整的路径),而
不是将所有内容都塞进一个提示词中。
## 状态与路线图
`v0.1` —— 编排核心与 bridge 骨架,从生产实践中提取并进行了泛化。
将随着实践的发展进行扩展(当其背后的真实项目
带来了新启示时,此代码仓库将随之更新):
- 任务**体裁分类**和声明式体裁模板
- **记忆系统**:反馈 / 引用 / 项目规则类、编译索引,
以及 事件 → 规则 → 提升阶梯
- **技能与钩子**骨架(角色绑定、机械护栏)
- 模型层级**路由策略**(按协议步骤分配 确定性 / 廉价 / 前沿 模型)
Issues 和 discussions 已开放 —— 在当前阶段,来自他人在自己项目中
运行该协议的现场报告是最宝贵的贡献。
## 许可证
MIT —— 见 [LICENSE](LICENSE)。可自由使用、分叉并用于商业运行。如果它为你节省了
时间,点个 star 能帮助更多人发现它。
*由 [Marcin "Wato" Marzec](https://wato.org) ([@wato12](https://github.com/wato12)) 维护 · marcin.marzec@wato.org*
标签:AI辅助开发, Linux 内核安全, 工作流, 工程规范, 开发协同, 网络安全研究, 防御加固, 项目管理