From helloagents
Enforces running verification commands (lint/test/build/typecheck) and checklists before claiming task completion, committing code, or creating PRs. Loops with reflection until all pass, checks git diff and code size.
npx claudepluginhub hellowind777/helloagents --plugin helloagentsThis skill uses the workspace's default tool permissions.
声称完成之前,必须有验证证据。
Enforces running verification commands like tests, lints, builds before claiming code complete, fixed, or passing, prior to commits/PRs.
Enforces evidence-based verification by running fresh tests, builds, linters, reviewing outputs before claiming work done, committing, or PRing.
Enforces running verification commands (tests, linter, build) and confirming output before claiming work complete, fixed, or passing—before commits/PRs.
Share bugs, ideas, or general feedback.
声称完成之前,必须有验证证据。
.helloagents/ 在本 skill 中统一按项目级存储路径理解:交付证据写入当前 state_path 所在目录下的 artifacts/*.json;若 project_store_mode=repo-shared,verify.yaml、方案包与 DESIGN.md 按当前上下文中已注入的项目知识/方案目录解析。
没有运行验证命令 = 不能说"完成"、"通过"、"已修复"。 没有看到验证输出 = 不能声称结果。
验证不是一次性操作,而是循环直到通过:
任务完成
↓
运行验证命令(lint/test/build/typecheck)
↓
全部通过?
├─ 是 → 收集已激活技能的交付检查清单 → 逐项确认 → 报告完成
└─ 否 → 反思 → 修复 → 重新运行验证(回到循环开头)
这个循环没有上限。验证失败就修复,修复后再验证,直到全部通过。 不允许在验证失败的状态下报告完成或询问用户是否跳过。
验证失败后,禁止跳过反思直接改代码。必须先回答:
连续 3 次以上验证失败 → 激活 hello-debug 的卡住升级机制。
声称任务完成时,必须有实际文件变更。如果 git diff 为空(没有任何文件变更),不能声称完成了产出文件的任务。
提交前检查变更范围:
变更涉及的文件必须符合 HelloAGENTS 编码原则中的体积控制规则:
优化或新增功能不能破坏已有测试:
.helloagents/verify.yaml 中的 commands(优先;project_store_mode=repo-shared 时按共享知识目录解析)验证命令全部通过后,还需要: 这些标记只用于交付检查清单、验收记录和验证结果,不用于普通说明、方案解释或进度汇报。
src/api.ts:42 使用了参数化查询)scripts/closeout-state.mjs write 写当前会话 artifacts/closeout.json,记录 requirementsCoverage 与 deliveryChecklist 两项结论;两项都必须包含 status(PASS / BLOCKED)和 summaryreview-first,必须先确认当前会话 artifacts/review.json 已通过 scripts/review-state.mjs write 写成最新结构化证据;不要把审查自然语言消息直接当成交付证据contract.json 中 ui.visualValidation.required=true,必须确认当前会话 artifacts/visual.json 已通过 scripts/visual-state.mjs write 写成最新结构化证据;若没有视觉验收证据,不得把本轮视为 UI 可交付git status --short;若不是 git 仓库或无变更则跳过。若发现 .env、密钥、凭据、明显不应提交的大文件或二进制产物,停止提交并说明风险;否则执行 git add -A,使用当前回复语言生成简洁 conventional commit message 后执行 git commit。不自动远程 git push,除非用户明确要求helloagents-turn-state write --kind complete --role main;若因阻塞判定等待输入或因前置条件缺失而停下,写 kind=waiting 或 kind=blocked,并同时写 reasonCategory 与 reason;显式 ~auto / ~loop 下还要写 blocker.target、blocker.evidence、blocker.requiredAction,不要让运行时从自然语言消息里猜状态如果有方案包(requirements.md),执行完成后必须交叉检查:
contract.json,逐项确认其中的 verifyMode、reviewer / tester 关注边界都已被本轮验证覆盖contract.json 中 advisor.required=true 或 ui.styleAdvisor.required=true,额外确认当前会话 artifacts/advisor.json 已存在且结论为 clean;若没有 advisor 证据,不得把本轮视为可交付contract.json 中 ui.visualValidation.required=true,额外确认当前会话 artifacts/visual.json 已存在、覆盖要求的关键 screens / states,且结论为 PASS;若没有视觉验收证据,不得把本轮视为 UI 可交付验证时必须区分真正目标和代理指标:
代理指标全部通过 ≠ 真正目标达成。验证时必须回答:
不要从"任务完成了吗"出发,而是从目标反向推导:
每个关键产出必须通过四级检查:
未通过任何一级 → 视为未完成,必须修复。
以下想法意味着你在合理化跳过验证: