mcpField
V
verification-before-completion

verification-before-completion

github.com/obraAgent 工作流307.4k256.6k 次安装1 周前更新
代码仓库

关于 verification-before-completion

Verification Before Completion 是一个面向 Agent 的 skill,要求在声称任务完成、测试通过或构建成功之前,先运行验证命令并查看真实输出。它适合需要严格验证流程的编码 Agent 工作流,核心原则是以证据代替断言。

主要功能

  1. 01完成声明前必须有新鲜的验证证据
  2. 02按步骤执行识别、运行、读取、核对流程
  3. 03列出常见声明所需的验证方式
  4. 04识别并阻止无证据的成功表述
  5. 05提供回归测试的 TDD 红绿验证模式

适用场景

  1. 01编码 Agent 提交或创建 PR 前核对测试和构建结果
  2. 02审查 Agent 报告的成功状态并检查 VCS 差异
  3. 03按需求清单逐项核对任务是否真正完成

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/obra/superpowers --skill verification-before-completion

安装后在 Claude Code 中输入/verification-before-completion确认已加载。

详细介绍

完成前验证

概述

核心原则: 任何声明之前,始终先有证据。

违反本规则的字面要求,就是违反其精神。

铁律

NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE

如果你没有在本条消息中运行验证命令,就不能声称它通过。

关卡函数

BEFORE claiming any status or expressing satisfaction:

1. IDENTIFY: What command proves this claim?
2. RUN: Execute the FULL command (fresh, complete)
3. READ: Full output, check exit code, count failures
4. VERIFY: Does output confirm the claim?
   - If NO: State actual status with evidence
   - If YES: State claim WITH evidence
5. ONLY THEN: Make the claim

Skip any step = lying, not verifying

常见失败情形

声明需要不充分的依据
测试通过测试命令输出:0 个失败之前的运行结果、"应该能通过"
Lint 检查通过Linter 输出:0 个错误部分检查、以偏概全的推断
构建成功构建命令:退出码 0Linter 通过、日志看起来正常
Bug 已修复针对原始症状的测试:通过代码已修改、假定已修复
回归测试有效已验证红-绿循环测试只通过一次
Agent 已完成VCS diff 显示有变更Agent 报告"成功"
需求已满足逐条核对的清单测试通过

危险信号 - 立即停止

  • 使用"应该"、"可能"、"似乎"
  • 在验证之前表达满意("太好了!"、"完美!"、"完成!"等)
  • 未经验证就准备提交、推送或创建 PR
  • 轻信 Agent 的成功报告
  • 依赖部分验证
  • 想着"就这一次"
  • 疲惫,想尽快结束工作
  • 任何在未运行验证的情况下暗示成功的措辞

防止自我合理化

借口事实
"现在应该能用了"运行验证
"我很有把握"信心 ≠ 证据
"就这一次"没有例外
"Linter 通过了"Linter ≠ 编译器
"Agent 说成功了"独立验证
"我累了"疲惫不是借口
"部分检查就够了"部分检查证明不了什么
"换个说法,规则就不适用了"精神高于字面

关键模式

测试:

✅ [Run test command] [See: 34/34 pass] "All tests pass"
❌ "Should pass now" / "Looks correct"

回归测试(TDD 红-绿):

✅ Write → Run (pass) → Revert fix → Run (MUST FAIL) → Restore → Run (pass)
❌ "I've written a regression test" (without red-green verification)

构建:

✅ [Run build] [See: exit 0] "Build passes"
❌ "Linter passed" (linter doesn't check compilation)

需求:

✅ Re-read plan → Create checklist → Verify each → Report gaps or completion
❌ "Tests pass, phase complete"

Agent 委派:

✅ Agent reports success → Check VCS diff → Verify changes → Report actual state
❌ Trust agent report

适用时机

以下情况之前必须执行:

  • 任何形式的成功/完成声明
  • 任何表达满意的言语
  • 任何关于工作状态的正面陈述
  • 提交、创建 PR、完成任务
  • 进入下一个任务
  • 委派给 Agent

本规则适用于:

  • 原文表述
  • 改写与近义表达
  • 暗示成功的内容
  • 任何暗示完成或正确性的沟通

评论

支持 Markdown