关于 mb-execute
针对单个索引任务执行实现的技能,涵盖预检、代码修改、本地检查、证据记录和交接。它不负责关闭任务或决定状态,这些由调度器或明确指定的负责人处理。
主要功能
- 01校验任务记录、依赖和层级
- 02按任务层级选择简版或完整协议
- 03在限定范围和约束内实现
- 04运行相关本地检查并记录证据
- 05交接工作但不更改任务状态
适用场景
- 01实现范围明确的 T0 或 T1 任务
- 02依据关联规范处理 T2 或 T3 工作
- 03记录测试失败或无法运行的检查供审阅
- 04将实现证据交给验证者
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ mrvladd-d/ memobank --skill mb-execute安装后在 Claude Code 中输入/mb-execute确认已加载。
详细介绍
mb-execute - 实施交接
目的
mb-execute 用于实施一个范围明确的 JSON 任务。它不是一个小型调度器,也不负责关闭任务。流程:读取任务 -> 最小化预检 -> 遵循协议 -> 实施 -> 本地门禁 -> 证据 -> 交接。
状态转换模式
状态转换分为两种模式。
调度器模式:
/autopilot和/autonomous负责任务状态转换。- 由调度器决定是否符合关闭、失败或阻塞的条件。
/execute返回范围明确的实施交接;它不会关闭任务。/verify给出功能性判定和证据;在调度器模式下,它不会关闭、标记失败、阻塞或提升任务状态。/red-verify为 T2/T3 给出语义判定;在调度器模式下,它不会关闭、标记失败、阻塞或提升任务状态。- 在运行
/mb-sync前,调度器必须将关闭/失败/阻塞决定、最终任务状态和证据链接写入权威索引记录.memory-bank/tasks/TASK-*.task.json。 /mb-sync会记录/协调已写入的任务状态。它不会决定关闭、失败、阻塞或提升任务状态,也不得同步仅存在于调度器上下文中的决定。- 根据层级策略,T0/T1 调度器关闭任务时可使用简要证据/功能性 PASS。
- T2/T3 调度器关闭任务时,必须先获得
VERDICT: PASS和SEMANTIC_VERDICT: semantic-pass,然后才能将状态标记为done。 - T3 调度器关闭任务时还必须包含精确标记
HUMAN_CHECKPOINT: done和ROLLBACK_RECOVERY_NOTE: present。
手动模式:
- 预期的 T0/T1 简单流程:针对一个 TASK 运行
/execute -> /verify。 - 只有在存在明确的关闭负责人时,才允许手动关闭任务。
explicit standalone owner指以下任一情况:用户直接要求当前顶层 Agent 关闭任务;或者顶层 Agent/编排器明确为一个 TASK 执行手动工作流,并记录其负责关闭任务。子 Agent/工作者提示词不会自动成为关闭负责人。- 只有在明确的关闭负责人存在,且已将完成证据写入任务记录的
verify字段和该层级要求的简要/完整协议后,/verify PASS才可将T0/T1的状态标记为done。 - 如果没有明确的关闭负责人,
/verify会记录VERDICT: PASS、证据和关闭建议,保持status不变,并告知调度器/负责人关闭任务。 - 手动关闭
T2/T3时,必须先获得/verify PASS,再由/red-verify/mb-red-verify给出SEMANTIC_VERDICT: semantic-pass,之后才能将状态标记为done或运行/mb-sync;如果没有 semantic-pass,则保持关闭待处理或阻塞状态,不得标记为 done。 - 手动模式下的
semantic-concern表示:未经人工审查/跟进,不要相信现有的done状态。 - 不要在同一次任务运行中混用调度器模式和手动模式。
- 不使用持久化的
mode字段。
输入
TASK_ID,例如TASK-123.memory-bank/tasks/index.json- 已索引的
.memory-bank/tasks/<TASK_ID>.task.json - 任务的
tier: T0|T1|T2|T3 - 任务引用的功能或史诗文档
- 相关时使用
.memory-bank/requirements.md/ REQ ID - 如果任务记录或所链接的功能包含 SDD 规范链接,则适用于任何层级的任务:
.memory-bank/spec-index.md及所有链接的权威 SDD 规范 - 存在时使用更丰富的任务字段:
source_artifacts、normative_inputs、constraints、invariants、verification_targets
权威 SDD 规范链接是指指向 .memory-bank/spec-index.md、
.memory-bank/tech-specs/、.memory-bank/architecture/、
.memory-bank/contracts/、.memory-bank/domains/、.memory-bank/states/、
.memory-bank/adrs/、.memory-bank/testing/ 或 .memory-bank/runbooks/ 的链接。
缺少更丰富的字段或没有 SDD 规范链接,不会阻塞传统的 T0 /
T1 任务;应回退到所引用的文档。
对于 T2 / T3,缺少所链接的 SDD 规范是重大工作的阻塞条件。
最小预检
遇到以下情况时,明确移交错误并停止:
- 任务记录/索引文件缺失
- 记录中的
id与TASK_ID不匹配 - 缺少
tier,或其值不是T0|T1|T2|T3 - 任务
status为blocked、failed或done - 任一
depends_on任务缺失或状态不是done tier为T2/T3,且任务的扩展字段和关联功能的spec_design_links中都不包含相关的 SDD 规范链接
不要仅因缺少 SDD 规范链接而阻止 T0 / T1。
只根据 task.tier 路由。不要使用旧版 risk / risk.level。
协议路由
为运行时产物创建 .tasks/<TASK_ID>/。
T0 / T1:使用精简协议:
.protocols/<TASK_ID>/run.md;记录层级、目标、上下文、计划、变更、 门禁、证据和移交备注VERDICT: PASS|FAIL|BLOCKED仅是本地证据标记,不代表任务已关闭
T2 / T3:使用完整协议:
.protocols/<TASK_ID>/context.md、plan.md、progress.md、verification.md、handoff.md
T3:以下标记行是关闭任务的必要条件:
HUMAN_CHECKPOINT: doneROLLBACK_RECOVERY_NOTE: present
记录这些标记是否已存在或仍需补充;不要关闭任务。
实施规则
- 将范围限定在任务及其验收标准内。
- 对于任何层级,如果任务记录或关联功能包含权威 SDD 规范链接,则在编辑前阅读
.memory-bank/spec-index.md和所有关联的权威 SDD 规范;将其视为规范性输入。 - 大范围编辑前,记录目标、非目标、约束、涉及范围和门禁。
- 如需分派工作,使用范围明确且互不重叠的工作范围。
- 保留无关变更,不要重写生成的
shared-*文件。 - 协议备注须如实记录:更改内容、检查内容和证据位置。
本地门禁
根据项目说明运行相关本地门禁:lint/typecheck、单元测试,以及仅在相关时运行集成/e2e 检查。
如果门禁无法运行或运行失败,则在协议/移交记录中记录命令、结果、证据路径和阻塞因素。不要将其转化为最终任务状态。
输出/移交约定
完成时提供:
- 变更文件摘要
- 协议文件路径
- 已运行的本地门禁及结果
.tasks/<TASK_ID>/下的证据路径- 提供给验证者/审查者的验证目标和风险备注
- MB-SYNC 移交备注:应同步哪些内容,以及由谁同步
- 建议的下一任负责人:scheduler、verifier、red-verifier、明确指定的独立负责人或人工
非负责事项规则
mb-execute 绝不:
- 关闭任务
- 写入最终任务状态
- 运行
/mb-sync - 运行
/verify或/red-verify - 提升、阻止或解除对依赖任务的阻止
- 执行诸如进行中、失败或完成等调度器状态转换
调度器(/autopilot、/autonomous)或明确指定的独立负责人负责验证编排、最终状态决策、MB-SYNC,以及依赖任务的提升/阻止处理。