引言
Claude Code 现已配备功能更强大的内置设置检查工具。在 2.1.205 版本中,Anthropic 扩展了原有的 /doctor 工作流程,使其能够诊断配置问题并协助修复。/checkup 作为同一会话内工作流程的别名,现已可用。
这一变动看似微小,因为它只需一个斜杠命令即可触发。但在实践中,它解决了长期运行 Claude Code 时的一个常见问题:未使用的技能、过时的模型上下文协议服务器、过大的指令文件、缓慢的钩子程序、过时的安装版本以及重复的权限提示,都会使环境越来越难以理解。
其目的不仅在于报告问题所在。更新后的检查工具能够审查设置、解释拟议的更改,并在应用更改前征求用户批准。
/checkup
你也可以使用规范命令:
/doctor

一键式设置检查
根据 Claude Code 2.1.205 的更新日志,/doctor 现为一个完整的设置检查工具,能够诊断并修复问题,而 /checkup 是其别名。
这与独立的终端命令不同:
claude doctor
终端命令会打印只读的安装和设置诊断信息,无需启动交互式会话。而会话内的 /doctor 或 /checkup 工作流程可以更进一步,通过提议修复方案,让 Claude 利用其可用的工具来协调清理工作。
Claude Code 的创建者 Boris Cherny 描述了该检查工具旨在处理的几项任务:
- 清理未使用的技能、MCP 服务器和插件。
- 对本地
CLAUDE.md指令与已检入的项目指令进行去重。 - 将过大的根目录
CLAUDE.md拆分成嵌套文件和可复用的技能。 - 识别并禁用缓慢的钩子程序。
- 将 Claude Code 更新至最新可用版本。
- 在适当时默认启用自动模式。
- 预先批准频繁被拒绝的只读命令。
- 检测其他导致环境变慢或可靠性降低的设置问题。
该命令在做出更改前会请求确认。

检查功能实际审查的内容
1. 未使用的技能、MCP服务器和插件
Claude Code可以通过技能、插件、钩子和MCP服务器进行扩展。这些集成功能很有用,但成熟配置中往往会积累不再相关的组件。
某个MCP服务器可能是为旧的问题跟踪系统添加的;某个技能可能是为团队已不再使用的工作流创建的;某个插件可能虽然其命令已被替代却仍处于启用状态。
检查功能可以找出这些未使用的组件,并提出移除或禁用的建议。
这一点很重要,因为即使工具和指令没有积极协助当前任务,它们也会消耗注意力和上下文环境。较少的无关集成也使权限模型更易于审计。
2. 重复或过大的CLAUDE.md指令
CLAUDE.md文件为Claude Code提供持久指令。它们可以包含构建命令、编码规范、架构说明、测试要求和项目特定规则。
这些文件会被加载到会话上下文中。Anthropic建议保持每个文件简洁,并定期检查嵌套的指令文件,以避免过时或冲突的规则。
随着时间的推移,项目可能会出现几个常见问题:
- 同一规则同时出现在本地文件和已检入托管库的文件中。
- 代码库变更后,旧指令仍保留下来。
- 根级文件膨胀成包含大量不相关流程的集合。
- 团队级规则和目录特定规则混杂在一起。
- 详细工作流存储在
CLAUDE.md中,尽管它们作为按需技能效果更好。
检查功能可以比较本地指令和项目指令,识别重复内容,并提出更聚焦的结构建议。
一个实用的布局可能如下所示:
project/
├── CLAUDE.md
├── .claude/
│ ├── rules/
│ │ ├── frontend.md
│ │ ├── backend.md
│ │ └── testing.md
│ └── skills/
│ └── release/
│ └── SKILL.md
└── packages/
└── api/
└── CLAUDE.md
根级文件可以只包含整个仓库所需的规则。当Claude在相关目录内工作时,会加载更具体的指令,而可复用的流程则可以作为技能,在调用时加载。
3. 缓慢或冗余的钩子
钩子是在Claude Code生命周期特定节点运行的确定性操作。它们可以格式化文件、验证命令、执行策略、发送通知,或将Claude Code与内部系统集成。
只有当钩子的价值证明其成本合理时,它才是有用的。一个每次工具调用增加两三秒延迟的脚本,会在长时间会话中造成巨大延迟。
检查功能可以帮助识别出以下情况的钩子:
- 持续缓慢。
- 触发频率超出预期。
- 与其他验证步骤重复。
- 引用了已
不再存在。
- 产生用户已学会忽略的错误。
- 不再连接至活跃的工作流程。
禁用不必要的钩子不仅能提升速度,还能减少干扰,使重要故障更易被发现。
4. 安装与更新问题
启动器损坏、安装残留或更新不完整都可能导致行为异常。安装健康检查可审查安装状态,并建议更新 Claude Code。
如需手动检查已安装版本,可使用:
claude --version
确切的更新方式取决于 Claude Code 的安装方式。
受管理的企业部署可能会固定某个版本,因此用户不应仅仅因为存在新版本就覆盖组织策略。
5. 反复出现只读权限提示
Claude Code 使用的权限系统将低风险检查与可能修改环境的操作区分开来。
Anthropic 的安全文档指出,一组内置的只读命令(包括 ls、cat 和 git status 等)可在无提示的情况下运行。编辑文件、可能修改 Bash 操作或访问额外系统的命令,则可能需要审批。
如果用户反复拒绝或手动批准无害的只读命令,安装检查可建议设置更清晰的权限规则。目标是在不授予广泛写入权限的前提下,减少提示疲劳。
良好的权限规则应当精准。批准特定的只读模式比允许整个 shell 或工具类别更安全。
为何上下文维护至关重要
AI 编码代理需要将多种信息整合到同一个工作上下文中:
- 当前对话
- 相关源代码文件
- 工具结果与命令输出
CLAUDE.md指令- 技能描述
- MCP 工具定义
- 计划、任务状态与中间发现
上下文窗口是有限的。大量无关的设置信息会挤占实际问题的处理空间。
这并不意味着每个已安装的技能或 MCP 服务器都会自动完整加载。Claude Code 使用按需加载技能主体和工具发现等机制来控制上下文使用量。即便如此,不必要的配置仍会增加复杂性,并提升过时指令或集成影响会话的概率。
因此,健康的设置需要像软件项目一样进行维护:
- 移除不再使用的内容。
- 保持全局指令简洁。
- 将专用流程移至范围限定文件或技能中。
- 审计集成与权限。
- 衡量钩子的成本。
- 在项目重大变更后重新审视设置。
从诊断到辅助清理
早期的诊断工具通常在列出错误后便停止。用户仍需理解每一条警告、找到相关文件、决定修复方式,并手动应用修复。
更新后的会话内检查采用了更智能的代理模式:
- 检查当前环境。
- 识别具体问题。
- 评估清理的收益。
- 展示拟变更的内容。
- 让用户选择:全面清理、选择性修复,或仅生成报告。
- 仅应用用户同意的变更。
已批准的更改。
7. 保留文件修改以便审查。

这使得工作流程更接近一个交互式维护助手,而不仅仅是一个被动的错误报告。
审批步骤很重要。一个工具不应仅仅因为认为设置效率低下,就悄悄移除项目技能、重写指令文件或更改权限行为。
自主命令相关的安全改进
同一版本还包括旨在降低 Claude Code 更自主运行时风险的更改。
几分钟搭建展示站并增长获客
输入一句想法,We0 AI 即可生成展示站、页面与 CMS。发布上线后并帮你获取客户和流量。
用户注册赠送一次完整项目生成
适合先体验一次完整生成流程,快速看到项目初稿。
防止会话日志中出现伪造的审批
后台任务通知现在会明确说明何时未发生人工输入。这是为了防止记录中的文本被误认为是真实的用户审批。
对于一个代理来说,“记录中包含类似审批的文本”与“用户通过界面实际批准了此操作”之间的区别至关重要。安全敏感决策需要一个可信的审批渠道。
对危险的 rm -rf 命令进行额外确认
更新日志还提到了自动模式的改进:当路径包含无法从上下文解析的变量时,Claude Code 会在运行 rm -rf 之前询问。
一个危险的例子是:
rm -rf "$TARGET_DIR/"
如果 TARGET_DIR 为空或扩展不正确,结果可能与脚本作者的意图大相径庭。
正确的教训并非是一个确认提示就能让破坏性的 shell 命令变得安全。用户仍应检查解析后的路径,尽可能使用沙箱或一次性环境,维护备份,并避免在生产系统中使用宽泛的删除命令。
自主性需要边界
此版本结合了两个看似冲突的目标:
- 减少日常只读工作中不必要的打断。
- 对不确定或破坏性操作增加更强力的确认。
这些目标是相辅相成的。一个有用的代理应在明确定义的安全区域内快速行动,并在接近不可逆后果的边界时放慢速度。
/doctor、/checkup 和 claude doctor
这些相似的名称可能会造成混淆。
| 命令 | 运行位置 | 主要用途 | 能否提出或应用修复? |
|---|---|---|---|
/doctor | 在 Claude Code 会话内 | 完整设置检查 | 能 |
/checkup | 在 Claude Code 会话内 | /doctor 的别名 | 能 |
claude doctor | 终端,无需打开会话 | 只读安装和 |
设置诊断 | 否 |
对于大多数希望Claude检查并帮助清理当前设置的用户而言,/doctor或/checkup是相关命令。
对于脚本、支持检查或在会话外快速安装诊断场景,使用claude doctor更为合适。
安全运行/checkup的方法
第一步:检查当前仓库状态
在允许工具修改配置文件前,请确保重要工作已提交或备份。
git status
审查未提交文件,避免将无关代码变更与配置清理混在一起。
第二步:在目标项目中启动Claude Code
cd /path/to/project
claude
在正确的仓库中运行检查很重要,因为项目指令、钩子、插件和MCP设置可能存在作用域限制。
第三步:执行检查
/checkup
在接受更改前先阅读报告。
第四步:选择处理范围
根据Claude的发现,界面可能提供以下选项:
- 应用推荐的清理方案
- 选择特定类别
- 保留当前设置并生成报告
- 先讨论建议再做决定
当仓库包含自定义内部工具或团队共享配置时,建议选择性地进行清理。
第五步:审查差异对比
配置文件变更后,请检查它们:
git diff
特别关注以下内容:
CLAUDE.md和CLAUDE.local.md.claude/目录下的文件- 钩子定义
- 插件设置
- MCP配置
- 权限规则
- 任何生成的技能
第六步:测试常规工作流程
运行代表日常使用的任务。确认必要的工具仍能工作,相关指令正常加载,钩子仍能执行重要规则,权限提示符合预期。
第七步:单独提交清理内容
当共享项目配置发生变更时,使用聚焦的提交记录,以便团队成员能独立审查和回滚。
git add CLAUDE.md .claude/
git commit -m "chore: 清理Claude Code配置"
根据实际修改的文件调整路径。
何时不应立即接受自动清理
在以下情况下,未经审查不要批准所有建议:
- 仓库使用组织管理的设置
- MCP服务器提供关键业务集成
- 钩子强制执行安全或合规策略
CLAUDE.md包含为提高可移植性而故意保留的重复内容- 项目将Claude Code锁定在测试版本
- 多个团队依赖相同的插件或指令层级
- 清理方案提议更改权限行为
- 工作树包含无关的未提交更改
在这些情况下,应首先将检查作为审计报告使用。通过团队常规审查流程讨论或应用变更。
常见问题解答
什么是Claude Code的/checkup命令?
/checkup是Claude Code 2.1.205版本中引入的扩展会话内/doctor工作流程的别名。它会审计设置问题,并可为配置、上下文、集成、钩子、安装健康状态及相关问题提供修复建议。
/checkup与/doctor有何不同?
在当前Claude Code版本中,
/checkup 是 /doctor 的别名。两者均可在交互式 Claude Code 会话中触发相同的完整设置检查功能。
claude doctor 与 /doctor 是否相同?
不同。claude doctor 在终端中运行,无需开启会话即可输出只读的安装及设置诊断信息。而斜杠命令则可在征求用户同意后协调执行修复。
/checkup 能否自动删除技能或 MCP 服务器?
该工作流程能够识别未使用的组件并提出清理建议,但设计上会在执行变更前征询许可。用户需逐一审查每项建议移除的内容,尤其在共享或托管项目中。
为什么大型 CLAUDE.md 文件会影响 Claude Code?
CLAUDE.md 中的指令会占用会话上下文空间,冗长或重复的文件会挤占原本可用于当前任务的空间。Anthropic 建议为大型项目编写精简指令并使用分域文件。
是否应将所有流程移出 CLAUDE.md?
并非如此。稳定的项目事实、编码规则及必要命令仍应保留在 CLAUDE.md 中。冗长且可复用的流程更适合作为技能,因为其完整内容仅在需要时才会加载。
/checkup 能否使自动模式完全安全?
不能。它虽然能改善默认设置并增加保护措施,但用户仍需负责审查命令与权限。破坏性操作、外部写入、生产环境访问及凭证处理仍需谨慎管控。
应该多久运行一次设置检查?
无需遵循固定时间表。建议在以下情况执行:重大配置变更后、Claude Code 运行变慢或响应不一致时、集成多个扩展后,或作为周期性项目维护审查的一部分。
相关工具
- Claude Code:Anthropic 面向终端、IDE、桌面及网页的智能编码工具。
- Claude Code 技能:创建可按需重用的可扩展流程。
- Claude Code 中的模型上下文协议:将 Claude Code 连接至外部工具、API、数据库及服务。
- Claude Code 钩子:在代理生命周期的指定节点运行确定性自动化任务。
- Claude Code 插件:打包并分发技能、代理、钩子及 MCP 集成。
- Claude 代理 SDK:使用 Claude Code 相同的核心工具与代理循环构建可编程代理。
相关链接
-
Claude Code 更新日志:官方发布历史,包含 2.1.205 版本的设置检查变更。
-
Claude Code 命令参考:内置斜杠命令与捆绑技能参考。
-
Claude Code CLI 参考:终端命令与 CLI 标志官方参考。
-
[Claude 如何记忆项目](https://docs.
-
anthropic.com/en/docs/claude-code/memory:关于如何构建和维护
CLAUDE.md文件的指南。 -
Claude Code 安全:权限行为、沙箱机制、审批控制和安全指南。
-
Claude Code 设置:配置范围、托管设置、插件、MCP策略和文件系统控制。
-
Claude Code 故障排除:官方诊断和恢复指南。
-
使用钩子自动执行操作:创建和审计生命周期钩子的实用指南。
总结
Claude Code 2.1.205将/doctor命令扩展为更广泛的设置维护工作流,并新增了/checkup作为别名。该命令可以检查未使用的扩展、重复的指令、过大的CLAUDE.md文件、运行缓慢的钩子、安装问题以及重复的权限行为。
这次更新最有价值的部分并非将维护功能整合到单一命令中。而是该工作流能够在修改环境之前,解释建议的变更并让用户参与其中。
此次发布还强化了代理工具的重要模式:常规的只读操作应尽量减少摩擦,而不确定或破坏性操作则应获得更强的安全防护。
一个更健康的 Claude Code 环境,并非拥有最丰富的技能、钩子和集成——而是每个加载的组件都有明确用途,每个强大的操作都有适当的边界。



