CLAUDE.md 更新检查器
检查本次对话中的代码改动,判断是否需要更新项目的 CLAUDE.md。
概述
这个 skill 帮助你在完成一次开发任务后,检查是否有值得记录到 CLAUDE.md 的新模式、约定或项目知识。
使用方法
code
/check-claude-md
在完成一个功能开发、bug 修复或重构后调用。
工作流程
Phase 1: 收集本次改动
- •回顾对话历史 - 识别本次对话中修改或创建了哪些文件
- •分类改动类型:
- •新功能代码
- •Bug 修复
- •重构
- •配置变更
- •依赖更新
Phase 2: 分析是否有可记录内容
检查以下几类值得记录的内容:
2.1 项目约定和模式
- •新建立的命名约定
- •新的目录结构规则
- •新的代码组织模式
- •新的错误处理方式
2.2 技术决策
- •选择了某个库/框架的原因
- •架构决策及其理由
- •性能优化策略
- •安全考虑
2.3 开发流程
- •新的测试策略
- •新的构建/部署步骤
- •新的环境配置要求
2.4 避坑指南
- •遇到的问题及解决方案
- •需要注意的边界情况
- •依赖的版本兼容性问题
Phase 3: 读取现有 CLAUDE.md
- •查找项目根目录的 CLAUDE.md
- •如果不存在,提示是否需要创建
- •分析现有内容,避免重复
Phase 4: 生成更新建议
输出格式:
code
## 本次改动摘要 - [改动 1] - [改动 2] - ... ## 建议更新 CLAUDE.md ### 需要新增的内容 #### [章节名称] [具体内容] ### 需要修改的内容 [原内容] → [新内容] ## 不需要更新的原因(如适用) [说明为什么本次改动不需要记录]
Phase 5: 确认并执行
- •展示建议 - 显示具体的更新内容
- •询问确认 - 使用 AskUserQuestion 询问用户是否同意更新
- •执行更新 - 用户确认后,使用 Edit 工具更新 CLAUDE.md
关键指令
判断原则
值得记录的:
- •对未来开发有指导意义的决策
- •不明显但重要的约定
- •踩过的坑和解决方案
- •项目特有的模式
不值得记录的:
- •显而易见的代码(如简单的 CRUD)
- •一次性的修复(无普遍意义)
- •通用的最佳实践(已在全局 CLAUDE.md 中)
- •具体的业务逻辑细节
必须遵守
- •不要过度记录 - CLAUDE.md 应精简,只记录真正重要的内容
- •避免重复 - 检查现有内容,不要重复已有的规则
- •保持一致性 - 新内容要与现有 CLAUDE.md 风格一致
- •必须确认 - 更新前必须获得用户确认
禁止事项
- •不要记录临时代码 - 如 debug 代码、实验性代码
- •不要记录具体实现 - CLAUDE.md 是指导原则,不是代码文档
- •不要未经确认就修改 - 必须先展示建议,等用户确认
输出示例
场景:用户完成了一个 API 错误处理的重构
code
## 本次改动摘要
- 重构了 API 错误处理,统一使用 `AppError` 类
- 新增了 `src/errors/index.ts` 错误定义文件
- 所有 API 路由统一返回 `{ error: string, code: string }` 格式
## 建议更新 CLAUDE.md
### 需要新增的内容
#### 错误处理
- 所有 API 错误使用 `AppError` 类(位于 `src/errors/index.ts`)
- 错误响应格式:`{ error: string, code: string }`
- 不要在路由中直接 throw Error,使用 `throw new AppError()`
---
是否要将以上内容添加到 CLAUDE.md?
与其他工具的配合
- •通常在完成一个 feature 或 fix 后手动调用
- •可以在 commit 前调用,确保重要决策被记录
- •建议形成习惯:改完代码 →
/check-claude-md→ commit