是什么

debug-your-config 提供系统化的配置排查方法,解决 CLAUDE.md、settings、hooks、MCP server 或 skills 不生效的问题。核心思路:先确认文件是否加载,再确认是否被覆盖,最后检查内容是否正确。

核心机制

诊断命令速查

命令显示内容
/context当前 session 的完整 context:system prompt、memory、skills、MCP 工具、对话
/memory加载的 CLAUDE.md 和 rules 文件,auto-memory 条目
/hooks当前 session 的 hook 配置
/mcpMCP server 连接状态和工具列表
/permissions当前生效的 allow/deny 规则
/doctor配置文件验证:无效 key、schema 错误、安装健康检查
/status活跃的 settings 来源,是否有 managed settings 生效
/debug [issue]启用 debug 日志,让 Claude 诊断问题

Settings 不生效排查

  1. 运行 /status 确认哪些 settings 来源活跃
  2. 运行 /doctor 检查 schema 错误和无效 key
  3. 检查 scope 优先级:Managed > Local > Project > User
  4. 检查环境变量是否覆盖了 settings 值

CLAUDE.md 不生效排查

  1. 运行 /memory 确认文件是否加载
  2. 子目录的 CLAUDE.md 在 Claude 读取该目录文件时按需加载,不在 session 开始时加载
  3. 文件加载但指令不被遵守:检查指令是否模糊、是否有冲突指令、文件是否过长

MCP Server 不生效排查

  1. 运行 /mcp 查看连接状态
  2. 项目级 .mcp.json 中的 server 需要一次性批准
  3. 相对路径问题:command 和 args 中的相对路径相对于 Claude Code 启动目录解析
  4. 连接成功但工具数为 0:选择 Reconnect;仍为 0 则运行 claude --debug mcp

Hooks 不生效排查

  1. 运行 /hooks 确认 hook 是否注册
  2. hook 必须在 settings 文件的 "hooks" key 下,不是独立文件
  3. matcher 字段用 | 分隔多个工具名(如 "Edit|Write"),不是数组
  4. 运行 claude --debug hooks 查看实时 hook 评估日志

隔离测试

CLAUDE_CONFIG_DIR=/tmp/empty-config claude

从空目录启动,绕过所有 ~/.claude 配置,排除配置干扰。

关键细节

  • CLAUDE.md 和 permissions 解决不同问题:CLAUDE.md 是指导,permissions 是强制边界
  • /doctor 报告问题后按 f 让 Claude 自动修复
  • settings 文件修改后有短暂文件稳定延迟,几秒后 /hooks 才显示新配置

与其他概念的关联

实践要点

  • 排查顺序:先 /context 确认加载,再 /status 确认来源,再 /doctor 检查错误
  • hook matcher 是最常见的配置错误:拼写错误会静默失败
  • 隔离测试是终极手段,可以快速确认是配置问题还是其他问题