5.8 KiB
5.8 KiB
name, description
| name | description |
|---|---|
| unidesk-subagent | UniDesk 主代理调度子代理的必读技能。用户提到子代理、subagent、并行代理、主代理调度、gpt-5.5、让子代理调查 issue、提交 PR、上线验证、结合 gh 的子代理工作流时必须使用。 |
UniDesk Subagent Orchestration
主代理调度子代理时先读本 skill,再读对应 reference。子代理可以并行推进低耦合任务,但主代理必须保留架构判断、PR 审核、合并顺序、上线 closeout 和最终结论的责任。
高频规则
- 子代理并行只用于成功率高、耦合度低、能放进独立 worktree/branch/issue/PR 的任务;共享架构方向、公共契约和同文件高冲突修改先串行定锚。
- 正式 GitHub issue/PR/comment/merge 仍走
$unidesk-gh;子代理可以提交 PR 和写调查结论,主代理负责 review/preflight/merge,除非用户明确授权某个子代理自上线自验证。 - 主代理和子代理必须通过 issue/PR/comment 链接传递可复用上下文、调查结论、证据链接和下一步边界;派发前先读既有评论,prompt 中只引用链接和增量任务,不复述长结论,避免不同子代理重复调查同一事实。
- 主代理派发执行型子代理前必须先创建子 issue,并把主要任务、接续上下文、目标分支/worktree、范围、禁止项和验收入口写入子 issue 正文;子代理 prompt 只给子 issue 链接和极短边界,不塞大段任务正文。每个执行型子代理维护自己的子 issue 和评论作为接续上下文;主 issue 评论区只由主代理写入主线 anchor、阶段汇总、调度决策和最终 closeout。
- 子代理不得把过程日志、单步证据、长调查和 post-task 反馈直接堆到主 issue 评论区,只能在主 issue 需要可见时由主代理引用子 issue/PR/comment 链接。
- 主代理跟踪子代理进度时优先读取子 issue 评论区、关联 PR 更新和 bounded issue/PR 状态;不要为了普通进度查询主动
send_input interrupt打断子代理主线。只有子 issue/PR 长时间无更新且只读 worktree 也无推进时,才进入问询、关闭和重开流程。 - 每个子代理 prompt 必须写清 repo、目标分支、独立 worktree、issue/PR、禁止触碰范围、验收命令、证据字段和是否允许部署;不要让多个子代理共享同一可写 worktree。
- 用户指定模型(例如
gpt-5.5)时,主代理调度子代理必须在任务描述或调度参数中显式遵守。 - 用户要求或授权“按任务难度分配模型”时,主代理必须按复杂度选择模型与 reasoning effort,并在 prompt 中写明选择理由;默认继承主模型,只有任务难度、风险或延迟收益明确时才显式覆盖。
- 执行型子代理必须能在自己负责的边界内完成“单步验证 -> 定位 -> 最小修复 -> 复测 -> PR/issue 证据”的闭环;这里的“单步验证”必须是可独立触发、独立执行、独立复测的入口,不是在端到端大循环中被动观察某个阶段。子代理不应停留在解释历史数据或等待主代理逐步批准;在授权边界内应自主真实触发目标侧独立单步 gate 做小闭环调优,测不通就继续细分/修复/复测,直到该单步通过或遇到明确越界阻塞。除非遇到架构边界、权限缺失或需要主代理合并/取舍,不要把每个单步验证都退回主代理通过 issue 大回环推进。
- 需要提交 PR 的子代理必须在 PR 前自行用相关独立单步跑通目标运行面验证并保存 bounded 证据;测不通就继续定位和修改,直到该单步在目标侧通过。只有权限、外部依赖、架构取舍或明确越界时才写 issue 阻塞/缺口,不得先提交 PR 让主代理或自动 follower 替自己联调。
- 主代理 review 子代理 PR 时直接信任子代理对运行结果、target-side gate 和 evidence 的描述;主代理只审核 diff、架构边界、受控入口、YAML-first、职责拆分和是否违反长期规则。除非描述自相矛盾、缺失关键字段或涉及安全/生产高风险,不要重复拉运行面证据或替子代理重跑 gate。
- 子代理完成后必须留下可审查工件:PR、issue comment、commit、验证输出摘要、部署/observer/trace 证据或阻塞说明;主代理不能只凭口头结论合并。
- 子代理长时间无响应时,主代理按“问询 -> 只读检查 worktree/PR/issue -> 再窄问询”的顺序处理;多次问询仍无回复时,可以关闭旧子代理,并在原 worktree/原分支/原 issue 边界上重开新子代理接续。重开前不得删除或重置旧 worktree;新子代理必须先读取原 worktree 状态和既有 issue/PR/comment 链接,再继续最小下一步。
- 子代理完成任务后,主代理必须再给该子代理发送 post-task 收口要求;若主代理要求子代理纠偏或补验证,则等纠偏完成后再发 post-task。post-task 反馈由子代理按
$post-task自行给出判断,主代理不负责反馈池去重;主代理只从子代理提好的反馈中挑选适合工程化的项转成正式 FEATURE/BUG issue,并优先派回提出该反馈的子代理执行。
常用配合技能
- GitHub issue/PR 正式读写、preflight、merge:
$unidesk-gh。 - AgentRun / Code Queue / AipodSpec 任务派发:
$unidesk-code-queue。 - CI/CD、rollout、PipelineRun、Argo closeout:
$unidesk-cicd。 - WebProbe、Workbench、浏览器复测:
$unidesk-webdev。 - 子代理完成后的反馈收口和反馈 issue 判定:
$post-task。 - 需要 MDTODO 记录和执行-审查循环时再用
$mdtodo-loop;不要把普通 GitHub PR 并行工作强行塞进 MDTODO。
何时读取 reference
- 任何“主代理调度子代理 + GitHub issue/PR”的工作流,必须读 references/gh-workflow.md。