Imported from alongor666/maestro (
AGENTS.md). Install upstream withnpx skills add alongor666/maestro. Copyright stays with the author.
项目规约 — 编排模式工作台(对所有在本仓工作的 Agent 生效)
本仓是 DSH Orchestrator 的控制中枢工作台。DSH 会话 = 控制平面;本仓 = 业务状态与事实来源。 规约与全局 ~/.dsh/AGENTS.md 叠加生效,冲突时取更严者。
角色与边界
- DSH 编排会话(本仓 cwd 下新开的编排模式会话):负责拆解、路由、验收、失败接力
- Product worker(codex-openai / codex-deepseek / claude-anthropic / claude-deepseek):一次性 invocation;不假设能看到任何先前对话;只认交给你的 Task Contract
- 云端 openai-agents:DEFERRED——官方支持第三方 API 前不调用
Worker 纪律(派工方与被派方共同遵守)
- 每次委派自包含:contracts/TASK_CONTRACT.md 全字段;返回按 contracts/RETURN_CONTRACT.md
- ALREADY_EXECUTED 必须增量对账——不重复执行任何副作用(install/migration/commit/push)
- 失败分类先于一切动作(contracts/FAILURE_TAXONOMY.md);裸 "failed" 不触发回退
- 回退仅 LIMIT/SERVICE/TRANSPORT、仅 invocation boundary、≤1 次;AUTH/策略/任务错误类不回退
- 单写者:写工作树前必取锁,完成即放: node tools/orchestrator/writer-lock.mjs acquire --worker --task node tools/orchestrator/writer-lock.mjs release --worker 只读 worker 可并行,无需锁
- 返修/复核派工:出卡前必跑(TOCTOU 闸,勿绕过): node tools/orchestrator/preflight.mjs check --repo --branch --expect-sha 顺序:先取 writer-lock,再 preflight,再派卡
- 每轮 worker 执行后记观测: node tools/orchestrator/log-run.mjs --json '{...}'
事实与验证
- repo > 结构化返回 > worker 自然语言。验收以 git status/diff/tests 为准
- 云端/外部产物进入本地前:DSH 检查 → 本地重跑测试 → 持锁应用
- EXTERNAL_WRITE(git push / PR / deploy / 生产数据变更 / 对外消息)一律需人类显式批准
仓内禁区
- backups/ 只读;.orchestrator/ 运行时勿手改;logs/ 与 registry/ 只追加
- 不修改 ~/.codex / ~/.claude 原生环境;不移动本仓(preset 内嵌绝对路径)
- 根目录 dshparquetreadonly.sh 与 DSH受限只读密钥部署手册.md 为历史交付物,保留勿删
交接产物
任务文件按 tasks/T-/ 存放(模板见 tasks/TEMPLATE.md);重要决策落 docs/; 生产事故与修复必须回写 git 提交说明。