Implement loopback HTTP console with claim new, integrate prepare, and pi packet sharing the same helpers as CLI; ship SPA and MCP brief/claim_archive wrappers.
3.9 KiB
3.9 KiB
name, description
| name | description |
|---|---|
| pi-subagent-dispatch | Dispatch gmktec PI analysis/review/test subagents via project MCP pi-subagents (roles/run/result). Use when delegating research, planning, reviews, diagnosis, test_run, acceptance_check, or report work—not for code implementation. |
PI Subagent 派发
权威:模型配置、执行器说明、流程规范。客户端规则:pi-subagents。阶段落盘:subagent-stage-record。
Cursor Auto 独占代码实施与修复;本 skill 只走本机 PI 子任务。
调用序列
pi_subagent_roles— 只读预览角色/模型(不调 PI)。- 选
role_id(research → planning → reviews → diagnosis → test_run / acceptance_check → report)。 - (推荐)
agentctl pi packet生成派发包;不触发 run:python3 -B scripts/agentctl.py pi packet \ --task "$ID" --role research \ --goal '…' --authorization-ref 'user:…' \ --source-sha "$(git rev-parse HEAD)" \ [--input-file …] [--approved-command '…']… \ --request-id "$RID" --write # → .doc/test-reports/assets/pi-subagents/<task>/<request>/packet.json pi_subagent_run— 按 packet 字段在 agentctl 租约下异步启动。pi_subagent_result— 取回收据;轮询至终态。
CLI 等价:python3 -B scripts/pi_subagents.py roles|run|result;run 必须包在 agentctl with --resource path:.doc/test-reports/assets/pi-subagents/<task>/<request> 内。
请求字段(MCP pi_subagent_run)
外层:worktree(已登记任务工作区绝对路径)、task_id、request 对象。
request 必填:
| 字段 | 约束 |
|---|---|
role_id |
配置 §3 中 enabled 角色 |
request_id |
任务内稳定唯一;同参重放不重复调模型 |
goal |
具体目标;子任务不依赖主会话未传入历史 |
authorization_ref |
可回链真实用户授权,禁止日志自授 |
source_sha |
完整 40-hex 提交;禁止 HEAD/分支名/短 hash |
input_files |
已跟踪 UTF-8 普通文件相对路径数组 |
timeout_seconds |
正整数 |
测试角色(test_run / acceptance_check)另需:
approved_commands:argv 数组的数组(如[["go","test","-short","./"]])plan_digest:外部已批准计划的 SHA-256 hex
禁止静默 model_override;临时改模型写任务 override 并说明用户来源。
租约与输出
- 资源:
path:.doc/test-reports/assets/pi-subagents/<task_id>/<request_id> - 产物:
receipt.json、report.md、命令日志(同目录) - 裸调
run(无租约)被拒绝
状态分离(红线)
| 字段 | 含义 |
|---|---|
run_status |
running / succeeded / failed / cancelled / unknown |
verdict |
pass / changes_required / blocked / not_applicable |
review_state |
阶段门禁;模型 succeeded 仅 pending |
测试 commands_passed/pass 只针对批准命令证据,不能直接赋给任务 acceptance。
常见拒绝码(执行器权威)
| 码 | 处置 |
|---|---|
INVALID_SOURCE_SHA |
换完整提交 hash |
APPROVED_COMMANDS_REQUIRED |
补 approved_commands + plan_digest |
MINIMAX_ROLE_FORBIDDEN |
不把 M3 用于关键角色 |
INPUT_NOT_TRACKED / PATH_OUT_OF_SCOPE |
收窄 input_files |
CONCURRENCY_LIMIT |
串行或等空闲槽 |
ORPHAN_RUNNING |
先核进程/副作用,勿盲目重派 |
Cursor hooks 对形状错误可能 permission=ask(advisory);硬拒绝以执行器为准。
禁止
- 把 implementation 派给 PI
- 自动换模型 / 伪造 lease / 递归把本修复再派给 PI worker
- 用模型叙事冒充 PASS;审查结论须带回报告路径与 receipt 字段