周一早会定了三件事,其中一件最重:把鉴权从 session cookie 迁到 JWT。你输入 /board,浏览器里开出一块看板。
你把目标建成八条任务:替换会话读取、改中间件、迁三个调用方、补回归测试。每条任务除了标题和描述,还可以写清楚用户故事和完成定义(Definition of Done)——“测试全绿”和“旧的 cookie 路径有兼容层”是两种完成。写得含糊的任务,可以让补全 agent 先把它打磨成型再开工。
拉上依赖:迁移任务不跑完,调用方那几条就排不上。然后点运行。第一波只有能跑的任务会动,被依赖挡住的安静地在 Ready 泳道等着。你看板子上每一条任务跑到哪一步、哪个 agent 在干、试了几次,全程都记着。
四十分钟后第一波落定。你点开任务,看 diff 和测试证据,有一条不满意,直接 request changes 让它返工;其余的验收通过,标记完成。下一波解锁,继续跑。中午之前,这件事的进度和结果都摆在板面上,而不是埋在某个终端的滚动历史里。
每条任务长什么样
一条任务有标题、描述、用户故事、实现建议、优先级和完成定义。这些字段会实际生效:执行 agent 拿到的就是你写的完成定义,验收时对着的也是它。
写不清的任务不用硬写。让补全 agent(product owner、refiner)先读代码把任务补全,你再改两笔——机器起草,人定稿。
跑起来之后
- 依赖就是调度:上游任务没完成,下游任务不会被放行,不存在“跑了一半发现前置没做”。
- 每条任务可以单独换模型:改名的任务用便宜的,啃硬骨头的任务用强的。
- 失败就重试,中断就续跑:某条任务的 agent 卡住了,retry 换个路数再跑;机器重启后没跑完的任务可以 resume。
- 跑成功不等于完成:任务停在 Review 等你验收。Attempt 成功是执行事实,完成是你的决定。
卡住了怎么办
看板上有三个刹车。Pause 撤掉排队的、让跑着的收尾;Stop 收掉本次的全部授权;Cancel 精确取消单次执行。拿不准就先 Pause。不用看板了,/board.stop 关掉所有本地服务。
什么时候用它
任务之间有依赖、每步都能独立验收的活,Board 最能发挥:迁移、多步特性、成批的重构加回归测试。任务图和记录本身就是交接文档,第二天开板接着跑,任务还在原地。
一两步就能改完的事,直接在会话里说更快。
开关与预算
第一次 /board 会问你要不要开启,确认即可,它不动你的模型和供应商配置。想手动控预算,workflow 段的每个上限都列在 Settings 参考。任务和记录落在 <CETAS_HOME>/.cetas/board/ 下,每个工作区一份;agent 自己也能查这些记录(board_work),所以“这段代码为什么存在”它答得上来,删改代码前它会先查溯源。