ACPX Supervised Execution
Overview
用 1 个 ACPX 主执行 session 真正干活,用 1 个低频监工 持续验收并自动回推修正,直到任务被验收通过或被明确判定失败。
核心原则:监工看真实工程进度,不看“进程还活着”假象;验收不过就继续推同一个 ACPX session,不重新开实现 session。
默认开场白: INLINECODE0
When to Use
- - 任务需要在 ACPX 里持续推进,不能做成“一次派发后静默等待”。
- 任务有明确产物、测试、日志、diff、报告或其他可检查工程证据。
- 你希望监工周期性验收,并在不通过时继续推动同一实现 session 修正。
- 你需要最终自动收口:完成/失败都汇报,监工停止,自身 session 关闭。
不要用于:
- - 单次 read、单次 edit、一次性问答。
- 需要多个并行实现 worker 的任务。
- 只想看存活状态、不关心实际工程进度的场景。
Hard Invariants
- 1. 只允许 1 个 ACPX 主执行 session。
- 监工默认每 5 分钟检查一次。 只有明确理由才改 cadence,禁止高频轮询。
- 监工每次都检查真实工程证据。 至少看其中两类:代码 diff、测试结果、日志、报告、生成物、提交记录、阻塞说明。
- 每次监工输出都必须显式包含这两个段落:
-
已完成
-
未完成
- 5. 验收不过时,监工必须把 continue/correction prompt 发回同一个 ACPX 主执行 session。
- 自动推进直到两种终态之一:
- 验收通过完成
- 明确失败(不可恢复阻塞、达到失败条件、或人工取消)
- 7. 完成和失败都必须有最终汇报/通知。
- 任务进入终态后,监工必须自删/自停。
- 任务进入终态后,ACPX 主执行 session 也必须关闭。
Minimum Artifact Contract
启动前先约定可检查产物;没有产物路径就不要启动监工。
推荐最小集合:
- -
reports/<slug>/task-brief.md:目标、约束、验收标准、失败条件 - INLINECODE4 :执行 session 持续写入进展与证据
- INLINECODE5 :监工逐轮追加验收记录
如果任务还有额外关键产物,也在 brief 里提前列出,例如:
- - 测试命令与预期结果
- 目标文件路径
- 生成物路径
- 阻塞日志路径
Step 1: Brief the Task
在派发前写清这 5 件事:
- 1. 目标是什么
- 什么算完成
- 什么算失败
- 监工要检查哪些证据路径
- 如果验收失败,允许监工回推什么类型的 correction
推荐 brief 结构:
CODEBLOCK0
Step 2: Start the Single ACPX Execution Session
派发 一个 ACPX session 执行主任务。prompt 必须明确:
- - 先读 brief
- 按 brief 的验收目标推进
- 持续把真实进展写进 INLINECODE6
- 不得自行再开第二个实现 session
- 被监工纠偏时,继续在当前 session 内修正,不要重建执行链路
推荐执行 prompt 模板:
CODEBLOCK1
Step 3: Start the Supervisor
再启动一个独立监工,默认每 5 分钟检查一次。
监工职责只有三件事:
- 1. 看真实工程进度
- 给出显式
已完成 / 未完成 验收报告 - 不通过时,把 correction 发回同一个 ACPX 主执行 session
监工每轮必须检查什么
至少检查以下项目中的两类,最好三类:
- -
progress.md 是否出现新的事实性进展,而不是空话 - 工作区 diff / 改动文件是否与目标一致
- 测试、构建、脚本、日志结果是否推进了验收
- 关键产物是否生成且内容可信
- 阻塞是否被真实缩小,而不是重复描述
禁止只根据“session 仍在运行”就判定正常推进。
监工输出格式
每一轮都按下面格式写到 reports/<slug>/review.md,并在对外状态消息里保持同样结构:
CODEBLOCK2
Step 4: Correction Loop
只要还有 未完成 项,监工就不能结束。
当决策是 continue 时,监工必须:
- 1. 提炼这轮验收失败的具体缺口
- 形成一段简短、可执行的 continue/correction prompt
- 发送到同一个 ACPX 主执行 session
- 等下一轮 5 分钟检查,再重新验收
推荐 correction prompt 模板:
CODEBLOCK3
Step 5: Decide the Terminal State
监工每轮只能落在 3 种决策之一:
- -
accepted:验收条件全部满足 - INLINECODE14 :还可继续推进
- INLINECODE15 :命中失败条件,或已无合理继续路径
accepted 时必须做完的动作
- 1. 输出最终报告,且明确写出:
-
已完成
-
未完成(如果为空,也要写
- 无)
- 2. 发送最终完成通知
- 关闭 ACPX 主执行 session
- 监工自删/自停
- 如果监工自身也运行在 ACPX session 中,完成上述动作后再关闭这个监工自己的 ACPX session
failed 时必须做完的动作
- 1. 输出最终失败报告,且明确写出:
-
已完成
-
未完成
- 2. 写清失败原因、已尝试动作、缺失条件
- 发送最终失败通知
- 关闭 ACPX 主执行 session
- 监工自删/自停
- 如果监工自身也运行在 ACPX session 中,完成上述动作后再关闭这个监工自己的 ACPX session
Supervisor Decision Rules
按下面顺序判断:
- 1. 先看 acceptance 是否全部满足 → 是则 INLINECODE23
- 再看是否命中 failure 条件 → 是则 INLINECODE24
- 其他情况一律 INLINECODE25
不要把“当前还在跑”当成 continue 的充分理由;必须能指出新的工程证据和下一步纠偏方向。
Example Supervisor Prompt
CODEBLOCK4
Failure-Proofing Checklist
开始前确认:
- - 已有明确 brief
- 已有证据路径
- 已知哪个 session 是唯一 ACPX 主执行 session
- 已知监工默认 cadence = 5 分钟
- 已知终态收口动作:最终通知、关闭主执行 session、监工自停
如果其中任一项缺失,先补齐再启动。
Common Mistakes
| 错误 | 正确做法 |
|---|
| 验收不过就新开实现 session | 继续推动同一个 ACPX 主执行 session |
| 监工只看“还活着” |
监工必须看 diff / test / artifact / log / report |
| 监工高频轮询 | 默认 5 分钟一次,只有明确理由才更改 |
| 监工只发一句“还在进行中” | 每轮都必须写
已完成 /
未完成 |
| 完成后只通知、不关资源 | 最终通知后必须关闭主执行 session,并让监工自停 |
| 失败时静默退出 | 必须发最终失败报告与通知,写清未完成项 |
Done Means Done
只有同时满足下面 5 条,任务才算真正结束:
- 1. 监工判定
accepted 或 INLINECODE30 - 最终报告已落盘
- 最终通知已发出
- ACPX 主执行 session 已关闭
- 监工已自删/自停
ACPX 监督执行
概述
用 1 个 ACPX 主执行会话 真正干活,用 1 个低频监督器 持续验收并自动回推修正,直到任务被验收通过或被明确判定失败。
核心原则:监督器看真实工程进度,不看“进程还活着”假象;验收不过就继续推同一个 ACPX 会话,不重新开实现会话。
默认开场白:我正在使用 acpx-supervised-execution 技能:1 个 ACPX 主执行会话 + 1 个默认每 5 分钟检查一次的监督器。
何时使用
- - 任务需要在 ACPX 里持续推进,不能做成“一次派发后静默等待”。
- 任务有明确产物、测试、日志、差异、报告或其他可检查工程证据。
- 你希望监督器周期性验收,并在不通过时继续推动同一实现会话修正。
- 你需要最终自动收口:完成/失败都汇报,监督器停止,自身会话关闭。
不要用于:
- - 单次读取、单次编辑、一次性问答。
- 需要多个并行实现工作者的任务。
- 只想看存活状态、不关心实际工程进度的场景。
硬性不变规则
- 1. 只允许 1 个 ACPX 主执行会话。
- 监督器默认每 5 分钟检查一次。 只有明确理由才改节奏,禁止高频轮询。
- 监督器每次都检查真实工程证据。 至少看其中两类:代码差异、测试结果、日志、报告、生成物、提交记录、阻塞说明。
- 每次监督器输出都必须显式包含这两个段落:
- 已完成
- 未完成
- 5. 验收不过时,监督器必须把继续/修正提示发回同一个 ACPX 主执行会话。
- 自动推进直到两种终态之一:
- 验收通过完成
- 明确失败(不可恢复阻塞、达到失败条件、或人工取消)
- 7. 完成和失败都必须有最终汇报/通知。
- 任务进入终态后,监督器必须自删/自停。
- 任务进入终态后,ACPX 主执行会话也必须关闭。
最小产物契约
启动前先约定可检查产物;没有产物路径就不要启动监督器。
推荐最小集合:
- - reports//task-brief.md:目标、约束、验收标准、失败条件
- reports//progress.md:执行会话持续写入进展与证据
- reports//review.md:监督器逐轮追加验收记录
如果任务还有额外关键产物,也在简要里提前列出,例如:
- - 测试命令与预期结果
- 目标文件路径
- 生成物路径
- 阻塞日志路径
步骤 1:简要说明任务
在派发前写清这 5 件事:
- 1. 目标是什么
- 什么算完成
- 什么算失败
- 监督器要检查哪些证据路径
- 如果验收失败,允许监督器回推什么类型的修正
推荐简要结构:
md
<任务标题>
目标
<目标>
验收
失败
证据路径
- - reports//progress.md
- <测试/日志/输出路径>
非目标
步骤 2:启动单个 ACPX 执行会话
派发 一个 ACPX 会话执行主任务。提示必须明确:
- - 先读简要
- 按简要的验收目标推进
- 持续把真实进展写进 progress.md
- 不得自行再开第二个实现会话
- 被监督器纠偏时,继续在当前会话内修正,不要重建执行链路
推荐执行提示模板:
text
先读取 reports//task-brief.md 并严格按其目标、约束、验收标准执行。
你是唯一的 ACPX 主执行会话。
执行要求:
- 1. 直接推进工程工作,不要只汇报计划。
- 每拿到新证据、完成一个子阶段、或遇到阻塞,都要把可检查事实写入 reports//progress.md。
- 写入内容必须包含:时间、改动/动作、证据路径、当前阻塞(若有)。
- 不要新开第二个实现会话;后续修正只在本会话内继续处理。
- 当你认为任务完成时,必须给出对应证据;如果确认失败,也要写明失败原因和已尝试项。
步骤 3:启动监督器
再启动一个独立监督器,默认每 5 分钟检查一次。
监督器职责只有三件事:
- 1. 看真实工程进度
- 给出显式 已完成 / 未完成 验收报告
- 不通过时,把修正发回同一个 ACPX 主执行会话
监督器每轮必须检查什么
至少检查以下项目中的两类,最好三类:
- - progress.md 是否出现新的事实性进展,而不是空话
- 工作区差异 / 改动文件是否与目标一致
- 测试、构建、脚本、日志结果是否推进了验收
- 关键产物是否生成且内容可信
- 阻塞是否被真实缩小,而不是重复描述
禁止只根据“会话仍在运行”就判定正常推进。
监督器输出格式
每一轮都按下面格式写到 reports//review.md,并在对外状态消息里保持同样结构:
md
审查 <时间戳>
已完成
- - <本轮确认完成的事实 1>
- <本轮确认完成的事实 2>
未完成
决策
下一步动作
- - <若继续,写明要发回主执行会话的修正方向>
- <若已接受/失败,写明收口动作>
步骤 4:修正循环
只要还有 未完成 项,监督器就不能结束。
当决策是 继续 时,监督器必须:
- 1. 提炼这轮验收失败的具体缺口
- 形成一段简短、可执行的继续/修正提示
- 发送到同一个 ACPX 主执行会话
- 等下一轮 5 分钟检查,再重新验收
推荐修正提示模板:
text
继续当前任务,不要新开会话。
上轮验收结果:
已完成:
未完成:
请优先补齐以上未完成项,并把新的工程证据写入 reports//progress.md。
如果遇到阻塞,写明阻塞原因、已尝试动作、下一步建议。
步骤 5:决定终态
监督器每轮只能落在 3 种决策之一:
- - 已接受:验收条件全部满足
- 继续:还可继续推进
- 失败:命中失败条件,或已无合理继续路径
已接受 时必须做完的动作
- 1. 输出最终报告,且明确写出:
- 已完成
- 未完成(如果为空,也要写 - 无)
- 2. 发送最终完成通知
- 关闭 ACPX 主执行会话
- 监督器自删/自停
- 如果监督器自身也运行在 ACPX 会话中,完成上述动作后再关闭这个监督器自己的 ACPX 会话
失败 时必须做完的动作
- 1. 输出最终失败报告,且明确写出:
- 已完成
- 未完成
- 2. 写清失败原因、已尝试动作、缺失条件
- 发送最终失败通知
- 关闭 ACPX 主执行会话
- 监督器自删/自停
- 如果监督器自身也运行在 ACPX 会话中,完成上述动作后再关闭这个监督器自己的 ACPX 会话
监督器决策规则
按下面顺序判断:
- 1. 先看验收是否全部满足 → 是则 已接受
- 再看是否命中失败条件 → 是则 失败
- 其他情况一律 继续
不要把“当前还在跑”当成 继续 的充分理由;必须能指出新的工程证据和下一步纠偏方向。
监督器提示示例
text
你是任务 的低频监督器。默认每 5 分钟执行一次检查。
必读:
- - reports//task-brief.md
- reports//progress.md
- reports//review.md(若已存在)
本轮要求:
- 1. 检查真实工程进度,不要只看会话是否存活。
- 至少核对两类证据:差异 / 测试 / 日志 / 产物 / 报告。
- 追加一条审查到 reports//review.md,