用 agent 在真实仓库里干活,难的不是派活,是最后那 20%。我在 Orca orchestration 里反复撞到这些:
- 编排者自己改主工作副本——「新终端」≠「新顶层 worktree 」。对策:每票
--worktree new-top-level; coordinator 不进 worker worktree 、不在主副本写。 state: ready≠ turn 已开始——回执只说明字节写入。对策:要 per-agent 启动证据(或turnStart: observed)再等;没开始就补救,不要重灌整份 prompt 。- 消息结算了却没人处理。对策:按 delivery ID 原子落盘、去重;整批处理完再 ack ;仅全心跳批次可自动 ack 。
- worker 建议改范围,循环直接采纳——「顺手删掉没用的组件」是 scope 。对策:先分类;细节可代答,范围/分叉/凭证/付费/不可逆 → 问人。
- 巨 diff 其实是格式化重排。对策:异常 diff 先留证再判断。
- 同一门禁反复挂、死循环重试。对策:有界重试 + 单票/run 熔断。
我把上述判断写成两个可安装 Agent Skill (中文 orchestra-auto-zh / 英文 orchestra-auto,语义一致),Orca 专用(驱动 orca orchestration),不是通用编排框架。
监督式协作 / Agent Skills 的写法受 Matt Pocock 相关公开思路启发,本仓库是落到 Orca 编排动词上的适配——并非他背书;规则写错了责任在我。致谢也写进了 README ( PR #6 )。
入口 SKILL.md 留路由与硬规则;派活循环/应答协议等进 references/,按需加载(少灌激活上下文;不写 A/B 数字)。
npx skills add whutlichao/orchestra-auto --skill orchestra-auto-zh
npx skills add whutlichao/orchestra-auto --skill orchestra-auto
仓库: https://github.com/whutlichao/orchestra-auto 英文失败形态对照( Orca 社区): https://github.com/stablyai/orca/discussions/29082
欢迎指出规则里的错误——宁愿被纠正,也不想继续猜。