Claude Code 验证清单:怎么证明 AI 真的改对了
Claude Code 说“改好了”不等于真的改好了。AI 编程最容易出问题的地方,不是生成代码,而是验证证据不足:命令没跑、页面没看、diff 没审、旧路径没测,最后把“应该可以”当成“已经通过”。
这篇文章给一份 Claude Code 验证清单,适合每次让 AI 修改项目后使用。
为什么完成不等于验证完成
Claude Code 很擅长读文件、改文件、跑命令和根据错误继续修。但它也可能:
- 只验证了内部函数,没有验证真实入口;
- 跑了不相关测试;
- 忽略构建产物;
- 漏掉移动端或边界路径;
- 把“没有报错”当成“功能正确”;
- 在总结里夸大验证结果。
所以你需要明确告诉它:什么证据才算通过。
验证证据分四类
| 证据类型 | 说明 | 例子 |
|---|---|---|
| 命令证据 | 真实命令运行结果 | npm test、yarn build、CLI 输出 |
| 产物证据 | 构建后文件或 HTML | dist/index.html、meta/canonical |
| 行为证据 | 用户入口可用 | 页面点击、API 请求、表单提交 |
| Diff 证据 | 改动范围可解释 | 只改目标文件,没有无关重构 |
一个任务至少需要两类证据。SEO、部署、页面和 CLI 类任务尤其不能只看源码。
通用验证流程
推荐流程:
1 | 明确目标 → 找真实入口 → 运行验证 → 读取输出 → 对照 diff → 总结证据 |
可以直接这样要求 Claude Code:
1 | 不要只说完成。 |
不同任务的验证清单
| 任务类型 | 必须验证 |
|---|---|
| 前端页面 | 构建成功、页面可访问、关键交互可用 |
| 后端接口 | 请求示例、响应体、错误路径、状态码 |
| CLI 工具 | 真实命令、参数、退出码、错误输出 |
| 内容站文章 | frontmatter、URL、构建 HTML、内链 |
| SEO 修改 | title、description、canonical、sitemap |
| 图片资源 | 文件存在、页面引用、尺寸不溢出 |
| Git 工作流 | diff 范围、测试结果、commit 边界 |
如果任务是“修 404”,验证就不能只看源码;必须检查构建产物或线上页面是否还链接旧 URL。
前端任务验证
前端任务至少看三件事:
- 构建是否通过;
- 目标页面是否能打开;
- 用户能否完成目标动作。
示例:
1 | 验证: |
如果 Claude Code 只说“组件已修改”,那还不够。
后端和 API 验证
API 任务不能只看单元测试。
至少验证:
- 成功请求;
- 缺参数;
- 权限不足;
- 错误状态码;
- 日志是否安全;
- 返回字段是否兼容旧调用方。
示例:
1 | curl -X POST http://localhost:3000/api/login \ |
内容站和 SEO 验证
内容站最容易出现“源码正确,线上错误”。
检查表:
- frontmatter date 是否决定 URL;
- description 是否存在且自然;
- canonical 是否指向最终 URL;
- 内链是否指向真实页面;
- sitemap 是否包含新 URL;
- 构建产物是否生成;
- 线上是否已经部署新版。
站内链接尤其要看最终 HTML,而不是只看 Markdown。
常见伪验证
| 说法 | 为什么不够 |
|---|---|
| “我看代码没问题” | 没有执行真实入口 |
| “测试通过” | 测试可能不覆盖这次改动 |
| “应该可以” | 没有证据 |
| “没有报错” | 不代表行为正确 |
| “文件存在” | 不代表 URL 可访问 |
| “本地好了” | 不代表线上已部署 |
遇到这些总结,要继续追问证据。
可复制提示词
1 | 请验证刚才的改动,不要继续改代码。 |
和代码审查怎么配合
验证证明“它跑过”,review 判断“它该不该这样跑”。两者都需要。
建议顺序:
- Claude Code 自己跑验证;
- 你看验证证据;
- 用 AI 预审 diff;
- 人工看业务边界;
- 决定是否合并。
可以继续看 AI 代码审查流程 和 Claude Code Git 工作流。
FAQ
Claude Code 跑了测试,还需要人工看吗?
需要。测试能证明部分行为,但不能替代业务判断、用户体验和影响范围审查。
每次都要完整构建吗?
不一定。小改动可以跑局部测试;但页面、SEO、静态站、部署相关修改,建议构建并检查产物。
如果没有测试怎么办?
至少要做手动验证:打开页面、运行命令、请求 API、检查生成文件,并记录结果。
总结
Claude Code 的价值不是“它说完成了”,而是它能帮助你形成证据链。每次 AI 改完代码,都要追问:真实入口是什么?命令跑了吗?产物看了吗?diff 可解释吗?只有证据完整,AI 编程才算进入可交付状态。

