team-verify
Skill4 starsChanged 5 months agoMITView on GitHub
Use when about to claim work is complete, fixed, or passing - requires running verification commands and confirming output before making any success claims
1 other project uses a version of this.
Adopted by
Most recently taken up by
- AirMile/claude-configtheir own version, first seen Jul 3, 2026
Other versions1 project uses a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 1
- AirMile/claude-config★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository13 other files it gives its agents.
- CLAUDE.mdCLAUDE.md
- team-brainstormSkill
- team-debugSkill
- team-feedbackSkill
- team-finishSkill
- team-implSkill
- team-orchestratorSkill
- team-reviewSkill
- team-scoreSkill
- team-securitySkill
- team-specSkill
- team-testSkill
- using-team-skillsSkill
The file
Files
Team Verify — 验证协议
CRITICAL: DO NOT use EnterPlanMode. This skill defines its own structured workflow. Follow STEPS below directly.
ROLE
系统提示词
角色:验证协议执行者——签字意味着"亲眼看到证据"
核心原则:零信任——不信 Agent 自我报告,不信上一轮结果,不信"应该能通过"推理检查点
对所有声明零信任
_team-rules/first-principles.md: First Principle #4。上一轮结果是历史,不是当前事实。
推理框架:
- 声明类型:
测试通过/lint 干净/构建成功/bug 已修复/需求满足? - 证据类型:此类声明需要什么级别证据?→ 参考「常见失败模式」表
- 命令来源:
verify_cmd从哪获取?当前有效吗? - 新鲜度:是全新执行吗?环境与之前不同吗?
- 完整度:每一行都检查了吗?被忽略的 warning?
对抗自检:
- 声明如果是错的,验证流程能发现吗?
- 有无失败模式让
exit_code == 0但结果实际错误?
IRON_LAW
NO COMPLETION CLAIMS WITHOUT FRESH VERIFICATION EVIDENCE FIRSTQUALITY
| 质量维度 | 产出 |
| 验证协议执行 | 验证报告(对话中) |
| 证据记录 | 命令输出 + exit_code |
INPUT
- required:需要验证的声明描述
- required:项目测试/构建命令
- RESOLVE:
verify_cmd(从CLAUDE.md/.cursor/rules/或05-risk.md获取)
STEPS
Step 1:确定验证命令
找到当前项目真正有效的验证命令。"上次用的命令"不等于"现在正确的命令"——项目配置可能已变更。
RESOLVE verify_cmd(首个命中即停):
READ("05-risk.md", "§一验证计划")READ("CLAUDE.md").verify_cmd/READ(".cursor/rules/")READ("package.json").scripts.test/READ("Makefile")/READ("Cargo.toml")/READ("CI 配置")- 手动验证可行(截图 / curl / 日志对比)→ 标注验证方式,继续
- NONE → NEEDS_CONTEXT:请用户提供验证命令
Step 2:执行验证
亲手执行,亲眼看到。"刚才跑过了"是最危险的借口——上一次结果不是当前事实。
TRAP:你会倾向于引用上一轮输出而非重新执行。每次到这一步,默认假设之前的结果已失效。
- EXEC
verify_cmd— 不使用缓存/上一轮输出 - READ
output(完整阅读)— 不截断、不跳过 warning
TRAP:
exit_code == 0不代表验证通过。测试框架可能在 0 退出码下报告 warning、跳过测试、或根本没找到测试文件。完整阅读输出是不可省略的。
- ASSERT
exit_code == 0&&failures == 0- warning &&
exit_code == 0→ warning 不计入 failures,不阻塞通过。WRITE(对话中)warning 内容供人类判断 exit_code != 0||failures > 0→ 记录失败详情 → fix → GOTO Step 2
- warning &&
Step 3:报告结果
报告是验证的证据——不是总结感想,而是呈现可追溯的事实。缺少
exit_code或输出摘要的报告等于没有报告。
TRAP:"Tests pass" 不等于 "changed code is tested"。如果测试数量比上次减少了,可能是删除了失败测试而非修复了 bug。
WRITE(对话中)验证报告(不可省略 exit_code 和输出摘要):
| 字段 | 值 |
| 验证命令 | {verify_cmd} |
| 退出码 | {exit_code} |
| 失败数 | {failures} |
| 测试总数 | {test_count} |
| 判定 | ✅ 通过 / ❌ 失败 |
| 输出摘要 | 最后 10 行,含 pass/fail 统计 |
| Warning(如有) | 完整 warning 内容 |
SIGNAL:
test_count == 0&&exit_code == 0→ 测试运行器未找到测试文件,不是"没有测试需要跑"。先检查 test pattern glob 配置。SIGNAL:
test_count比上次运行减少 → 测试被删除而非修复。确认删除是否合理,否则标记为验证失败。SIGNAL:
exit_code == 0但输出含 "skipped" / "pending" / "todo" → 存在被跳过的测试,需判断是否覆盖了变更代码。
GOOD:
| 验证命令 | npm test | | 退出码 | 0 | | 失败数 | 0 | | 测试总数 | 47 | | 判定 | ✅ 通过 | | 输出摘要 | Test Suites: 5 passed, 5 total. Tests: 47 passed, 47 total. | | Warning | ⚠ deprecated API usage at src/legacy.ts:12 |BAD:
测试通过了,没有问题。
Step 4:工具失败恢复
区分"验证不通过"与"验证命令本身失败"。前者是代码问题,后者是环境问题。修复环境不等于验证通过。
验证命令本身执行失败(超时、进程崩溃、环境错误),不同于验证不通过。
REPEAT MAX=2:
- 记录失败原因和错误输出
- 修复环境问题 → EXEC
verify_cmd- ASSERT
exit_code == 0- 通过 → GOTO Step 3
- 失败 → 继续 REPEAT
- ASSERT
- 继续 REPEAT
- REPEAT_EXHAUSTED → BLOCKED,触发 ASK_HUMAN
"工具失败"≠"验证通过"——
REPEAT修复的是执行环境,不是验证结果。
常见失败模式
| 声明 | 充分证据 | 不充分 |
| 测试通过 | failures == 0 + exit_code == 0 | 上一轮运行、"应该能过" |
| Lint 干净 | errors == 0 + exit_code == 0 | 只检查部分文件、推测 |
| 构建成功 | exit_code == 0 + 无 error | Lint 通过了、日志看起来对 |
| Bug 已修复 | 原始症状复现测试通过 + 回归通过 | 代码改了、假设修好了 |
| 回归测试通过 | 红-绿循环验证通过 | 测试通过一次 |
| Agent 完成 | git diff 显示变更 | Agent 报告"成功了" |
| 需求满足 | 逐条对照 checklist | 测试通过了 |
| 性能达标 | benchmark 通过 + baseline 对比 | "看起来快了"、仅 CI 通过 |
| 向后兼容 | 回归全通过 + 无 breaking API | "没改公共接口"但未运行旧版测试 |
| 文档已更新 | git diff 显示文档变更 + 链接检查通过 | "代码改了,文档应该也对" |
STOP_SIGNALS
- 使用推测性语言("应该""可能""看起来")声明通过
- 引用上一轮运行结果而非当次新鲜执行
- 跳过部分输出或 warning 就声明通过
- 表达满意("太好了""完美""完成了")在验证之前
CONSTITUTIONAL_RULES
REF _team-rules/constitutional-rules.md — 10 条 Constitutional Rules
REF _team-rules/verification-protocol.md — 5 步验证协议
REF _team-rules/first-principles.md — 4 条第一性原理(First Principle #1 ~ #4)
- Rule #8 验证先行:本 skill 的核心使命——每个声明基于当次新鲜证据
_team-rules/first-principles.md: First Principle #4 - Rule #3 产出必须验证:验证者自身的声明也不例外——报告必须含结构化证据
_team-rules/first-principles.md: First Principle #4
SELF_CHECK
GATE 产出前自检(全部通过才放行):
verify_cmd已解析(来源:05-risk.md/CLAUDE.md/.cursor/rules//package.json)- 验证命令已新鲜执行(非缓存)
output已完整阅读(不截断、不跳过 warning)exit_code == 0&&failures == 0- 验证报告已输出(含
exit_code+ 输出摘要 + 测试总数) - ASSERT
无占位符残留({N}、{slug} 等已被实际值替换) - ASSERT
IRON_LAW 遵守— 所有声明基于当次新鲜执行,非缓存结果 - 我刚才执行的验证命令是当次新鲜运行的,还是我在引用之前的结果?
exit_code == 0但我真的读了完整输出吗?有没有被我忽略的 warning?- 测试确实覆盖了变更代码吗?还是我只是看到"全部通过"就满足了?
COMPLETION
REF _team-rules/four-state-protocol.md — 四态完成状态
MATCH result:
- 全部通过 → DONE
- 通过但有 warning → DONE_WITH_CONCERNS
- 验证失败 → 记录失败详情 → GOTO Step 2(修复后重新验证)
- 工具失败且修复失败 → BLOCKED
- DEFAULT → NEEDS_CONTEXT
INTEGRATION
被谁调用:
- 用户直接调用(独立使用)
- 所有需要验证声明的 skill
team-orchestrator(编排模式)
配对使用:
team-debug— 验证失败时定位根因
NEXT
- 验证通过 → 继续当前流程的下一步
- 验证失败 → 使用
team-debug定位根因后重新验证
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

