ch3sh-lc/myworkflow/real-world-verify
Claude Code and agent skill by ch3sh-lc/myworkflow
- community
Checking that the SKILL.md file is still in the repository.
Use when **强制门禁**——在智能体闭环开发阶段4(含 bug 修复验证)、根因定位修复验证、Github协作提交前,必须调用本 skill 执行真实验证
Install
npx vskill@latest install ch3sh-lc/myworkflow/real-world-verifySKILL.md
定位
本 skill 是 myworkflow 所有编程 skill 的验证门禁。不通过本 skill = 不允许进入下一步(提交/合并/标记完成)。
核心原则:你不是在"检查代码",你是在"使用产品"。像真实用户一样运行、点击、输入、观察。不允许站在代码外面指指点点。
协作级别(三级模型):验证动作与执行级别无关——L1 单智能体自验、L2 子智能体各自验证自己的小件、L3 团队各 owner 验证自己的交付物;跨交付物接口兼容交给 integration-verify。同一交付物不按阶段拆窗口验证(步骤在交付物内部)。
协作语义与等待纪律(硬规则)
- L3 只用于大型、长程任务:把一个超大任务切成若干相互独立的部分,模仿真人团队「各自独立工作 → 沟通 → 整合」;每个 member ≈ 一个 L2(端到端做完自己那份再整合)。不要因为“任务大”就建团——要因为“需要持续负责人与并行独立交付”才建团。
- member 之间可直接沟通:任务切分不可能一开始就完美,执行中会出现交叉、重叠、接口变化;member 之间直接协商比“上报 leader 再转发”高效。leader 只在边界冲突需裁决、目标变更、验收标准修改时介入;改了交付边界同步 leader(记录在案),不必阻塞等批准。
- member ≠ leaf:leaf 寿命绑定单个任务、只与派发者沟通、任务完成即结束;member 长期存在(睡眠/随时唤醒复用),管一个领域、可跨任务复用、可直接与其它 member/leader 沟通。
- 等待纪律(硬规则):本 skill 涉及长命令 / 测试 / 构建 / 网络请求时,≥30 秒一律放后台任务或派 leaf,本回合内不等待(不轮询、不 sleep、不反复检查同一任务);结果靠二次唤醒取。leader 与 member 都不阻塞。
触发
- 强制调用(不可跳过):
- 智能体闭环开发 阶段4 开始时 → 返回 ✅ 进阶段 5,❌ 进阶段 5 问题循环
- 智能体闭环开发 阶段4(bug 修复验证)→ ✅ 进完成,❌ 进循环
- 根因定位与全面排查 的修复验证环节 → 回修复步骤
- Github协作 提交前自检 → 不允许提交
- 不触发仅限:纯文档修改、纯配置修改、无代码变更的讨论。
- 红旗自检(开始前必读):"跑几个测试就差不多了"→ 不,TDD 测试测代码,本 skill 测产品,两者不等价;"改动很小肉眼看看就行"→ 改了代码就必须跑,没有"改动小"豁免;"系统太复杂无法完整跑起来"→ 把能跑的部分跑起来,跑不起来说明你根本不了解它;"跑全量测试太慢了"→ 慢也比上线后出 bug 快;"看日志/输出就够了"→ 用户不看日志,用户看页面/CLI 输出/文件结果,模拟用户操作;"之前已经验证过了"→ 每次改动后重新验证,上次通过 ≠ 这次通过。
执行流程
步骤 0:接收调用参数
调用方传入:项目根目录、项目类型(Web应用/CLI工具/库/前端SPA/后端API/全栈/脚本/其他)、本次变更概要(改了什么、影响哪些功能)、主入口/启动命令、测试命令、用户关键路径(≥5 条)。
步骤 1:环境就绪检查(硬门禁)
程序启动不起来 = 验证不通过。没有任何借口。
- 启动程序主入口:执行启动命令,确认程序正常启动(server 监听端口、CLI 输出 help、SPA 编译成功可访问)。
- 启动失败 → 这是第一个要修复的问题:输出完整启动错误日志,标记 ❌,立即返回调用方。
- 启动成功 → 记录启动耗时、关键日志行(截取前 20 行)作为验证证据。
不可接受的启动验证:没实际执行("启动命令看起来没问题");执行了但没等完全启动就判断"应该起来了";端口被占用/编译报错仍声称"环境就绪"。
步骤 2:全量测试套件(硬门禁)
跑全量,不是挑几个文件跑。跑完报告统计数据,不能只说"通过了"。
按项目类型执行正确的全量测试命令:
| 项目类型 | 命令 | |
|---|---|---|
| Node.js | npm test | |
| Python | pytest | |
| Go | go test ./... | |
| Rust | cargo test |
规则:
- 必须执行项目定义的全量测试命令(不是挑几个测试文件)。无测试套件 → 跳过本步骤,直接进步骤 3 改为手动验证(不豁免,见下方「豁免条件」)。超时默认 5 分钟,大型项目可延长。
报告统计数据:
判定:通过率 100% → ✅ 进步骤 3;<100% → ❌ 列出所有失败测试,标记不通过,返回调用方;有跳过 → ⚠️ 列出跳过的测试及原因,判断是否掩盖问题。
步骤 3:用户视角端到端验证(硬门禁)
最核心步骤。以真实用户的身份,走完所有关键路径。不允许只测 happy path。
3.1 列出所有用户通道
根据项目类型和本次变更,列出用户可能走的所有通道(至少 5 条;少于 5 条 → 想得不够全面,重新列举):
| 通道类型 | 示例 | |
|---|---|---|
| 主要 happy path | 用户最常用的完整操作流程 | |
| 次要路径 | 不常用但合法的替代操作方式 | |
| 入口变化 | 不同 URL/命令参数/输入来源 | |
| 权限变化 | 不同角色(管理员/普通用户/未登录) | |
| 数据变化 | 空数据/单条/大量数据/特殊字符 | |
| 状态变化 | 首次使用/重复使用/中断恢复 |
3.2 逐条验证每条通道
对每条通道:1) 描述用户操作("打开页面 X → 输入 Y → 点击 Z → 看到 W")→ 2) 实际执行(启动浏览器/运行命令/调用 API)→ 3) 观察结果 → 4) 对比期望 → 5) 记录证据(终端输出/截图/HTTP 响应/文件输出——不允许只用文字描述)。
3.3 异常与边界路径(强制)
happy path 通过 ≠ 功能完成。用户不会只走 happy path。
对每条用户通道,至少验证以下异常场景:
| 场景 | 验证内容 | |
|---|---|---|
| 空/缺失输入 | 不填必填字段直接提交 → 有明确错误提示(文案可见)?崩溃? | |
| 非法输入 | 输入超长字符串/SQL 注入/特殊字符 → 是否正确拒绝? | |
| 重复操作 | 快速连续点击提交 → 是否重复创建? | |
| 后退/刷新 | 表单填写一半刷新或后退 → 数据不丢失、不重复写入(按声明保留或清空)? | |
| 未授权访问 | 未登录直接访问需登录 URL → 是否正确跳转? | |
| 资源不存在 | 访问不存在的 ID/路径 → 404 还是 500? | |
| 超时/断网 | 请求中切断网络 → 有明确错误提示(文案可见)?崩溃? |
步骤 4:回归检查
你改了 A,可能坏了 B。必须检查所有可能受影响的已有功能。
- 识别影响面:列出本次变更可能影响的所有已有功能/模块。
- 逐项验证:对每个可能受影响的功能走一遍核心流程。
- 记录结果:
步骤 5:输出验证报告
报告必须有具体数据。不允许"验证通过"四个字代替。
判定与阻断规则
通过条件(全部满足才算通过):
- [ ] 步骤 1:程序主入口启动成功
- [ ] 步骤 2:全量测试通过率 100%(无测试套件 → 手动验证全部用户通道取代)
- [ ] 步骤 3:所有用户通道(≥5 条)全部 ✅
- [ ] 步骤 3:异常/边界场景全部 ✅(至少覆盖:空输入、非法输入、未授权访问)
- [ ] 步骤 4:所有受影响的已有功能回归检查 ✅
- [ ] 步骤 5:验证报告包含具体数据(非空泛描述)
阻断规则:
| 情况 | 处理 | |
|---|---|---|
| 任一步骤 ❌ | 返回调用方,附验证报告"未通过项目清单" | |
| 无法启动程序 | 最高优先级——先修复启动问题 | |
| 测试通过率 < 100% | 列出失败测试 → 修复后重新验证 | |
| 用户通道 < 5 条 | 拒绝通过——必须覆盖更多通道 | |
| 异常场景未覆盖 | 拒绝通过——补充异常验证 | |
| 验证报告无具体数据 | 拒绝通过——补充证据后重新提交 |
豁免条件(严格受限):
- 无测试套件 → 手动验证所有用户通道 + 所有异常场景(步骤 3 工作量翻倍)。
- 无法启动(纯库项目)→ 全量测试 100% 通过 + 写一个使用该库的示例程序并验证其输出。
- 无用户界面(纯后端 API)→ 用 curl/Postman 逐条调用所有 API 端点,验证响应体/状态码。
与其他 skill 的交互
| 调用方 | 本 skill 返回后 | |
|---|---|---|
| 智能体闭环开发 阶段4 | ✅ → 进阶段 5(完成);❌ → 进阶段 5(问题循环) | |
| 智能体闭环开发 阶段4 | ✅ → 完成;❌ → 进循环(回阶段 3) | |
| Github协作 | ✅ → 允许提交;❌ → 拒绝提交,先修复 |
完成标志
- [ ] 验证报告已生成(包含步骤 1-5 全部内容)
- [ ] 所有步骤通过(或已标注不通过项)
- [ ] 验证证据可审查(终端输出 / 截图 / 日志文件)
- [ ] 总体判定明确(✅ 或 ❌,不允许模糊表述)
证据口径映射(与 myworkflow-subagent-protocol 一致,不重复其长段)
- produced(回执):验证报告已产出(路径 + 各步骤结论);只有报告路径不算完成。
- verified(可复核证据):步骤 1–5 每步有真实命令 + exit code + 证据附件(截图/日志/产物 sha256,有 runId 写 runId);超时、无输出、非空文件都不算证据。
- accepted(owner 验收):返回 ✅ 且「完成标志」逐条满足(报告必填字段齐全、判定与阻断规则全部通过)才算通过;超时/无输出 ≠ 失败也 ≠ 完成。
证据纪律(反臆测 E1–E6)
- E3 实跑优先:任何「通过/失败/可用」结论,必须来自真实执行——命令 + exit code + 日志片段(或 runId、截图路径)。没有 exit code 或 runId 的检查不算验证;只读代码猜行为也是臆测。
- E3 未核实就写未核实:核实不了的写「未核实」或「无法判定」,禁止用「应该/大概/可能/通常」当结论;宁缺勿猜。
- E5 禁止编造:不得编造测试结果、截图、日志、runId 或「已验证通过」;没跑过就写没跑过,缺证据就空缺并说明影响。
- 证据出处:每条判定记录出处(命令、exit code、日志行、runId、文件路径:行号),让第三方可复核。
- E2 假设显式化:拿不到证据时先标「假设(未核实)」并立即去实测;E1 不凭记忆或惯例判断功能是否可用。
- E6 交叉核对:关键事实至少两个独立来源(源码 + 实测);两处证据冲突以可执行结果为准,并记录冲突。
取证格式:命令 → exit code → 关键日志行/截图 → 判定;四者缺一即证据不足。
反例:只写「测试通过」不贴命令与 exit code、拿别人的运行结果当自己跑的、截图与结论对不上——均视为未验证。
检查点:报告里出现「已验证」却没有 exit code/runId、或结论含「应该/可能」→ 直接判不通过并退回补证据。
E7 代价优先(谨慎执行)
- 高风险验证路径(涉及生产数据、发布、重启、不可逆操作):先备份与预演/dry-run、小步执行,并记录回滚方式;不确定按高风险处理。
- 验证结论必须含代价评估:影响面、是否不可逆、如何回滚;缺代价说明的「通过」只算「未核实」。
Security
- Security scanPassed, 100 of 100Pattern checks on the skill's files.
- Model reviewNot runA model review is scheduled for the next rescan.
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/real-world-verify/SKILL.md
Popularity
- 7-day trend score
- 0
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/ch3sh-lc/myworkflow/real-world-verify)