Kanban 多代理协作板
Hermes Kanban 是一个持久化任务板,用来协调多个 Hermes profile 一起工作。每个任务都是 SQLite 数据库里的一行,每次交接都有记录,每个 worker 都是独立 OS 进程,有自己的身份、模型和运行环境。
如果说 /delegate 更像“临时找一个同事帮忙”,Kanban 就更像“给团队开一个项目看板”。任务不会因为当前进程退出就消失,worker 可以认领、心跳、阻塞、恢复和完成任务。
想按案例学习,可以先看 Kanban 教程。本页更像速查说明。
两个入口:模型用工具,人用 CLI
Kanban 有两个入口,底层都写同一个数据库。
- Agent worker 使用
kanban_*工具集,例如kanban_show、kanban_list、kanban_complete、kanban_block、kanban_heartbeat、kanban_comment、kanban_create、kanban_link和kanban_unblock。模型直接调用工具,不需要 shell 到hermes kanban。 - 人和脚本使用 CLI、slash command 或 Dashboard,例如
hermes kanban ...、/kanban ...和 Dashboard 里的 Kanban 页面。
这点很重要:worker 不靠浏览器界面工作,也不靠模拟人类输入命令。它们通过专用工具读写任务板。
初始化与查看
最小流程如下:
hermes kanban init
hermes kanban list
hermes dashboard
默认看板数据库通常在 ~/.hermes/kanban.db。如果你创建多个 board,每个 board 会有自己的数据库路径,避免不同项目互相干扰。
Dashboard 是观察系统最直观的地方。你可以看任务状态、worker 活跃情况、任务关系和运行日志;脚本和 cron 则更适合用 CLI 自动创建任务。
任务状态怎么流转?
一个典型任务会经历下面的过程:
- 你或 orchestrator 创建任务。
- dispatcher 找到可用 worker。
- worker 认领任务,并持续发送 heartbeat。
- worker 遇到问题时可以 block,并写明阻塞原因。
- 其他 worker 或你本人可以 comment、unblock 或接手。
- 任务完成后,worker 调用 complete,并写入结果。
这套流程的价值在于“可恢复”。即使某个 worker 崩掉,任务和历史仍然在数据库里,下一轮调度可以继续处理。
Swarm 与多 worker
v0.15.x 之后,Kanban 已经不只是列表,而是多代理平台。hermes kanban swarm 可以创建 root、并行 worker、verifier、synthesizer 等拓扑,让多个 profile 按角色协作。
适合使用 swarm 的场景包括:
- 大型代码改造,需要多个 worker 分文件或分模块推进;
- 研究任务,需要搜索、整理、验证和成稿分工;
- 回归测试,需要一个 worker 修改、另一个 worker 验证;
- 长任务需要 scheduled start、claim TTL 和失败重试。
新手建议先从单 board、少量任务开始。理解任务状态后,再引入 swarm。
什么时候用 Kanban,什么时候用普通会话?
如果任务能在一次对话里讲清楚,并且不需要长期跟踪,用普通会话即可。
如果任务具备下面任一特征,就值得用 Kanban:
- 需要多个 Agent 并行处理;
- 任务会跨越很长时间;
- 需要把工作拆成多个可追踪子任务;
- 需要 verifier 或 reviewer;
- 需要任务级模型、任务级 worktree 或定时启动。
记住一句话:会话适合即时协作,Kanban 适合持久协作。