跳转到内容

故障排除

使用此基于症状的指南快速识别和解决问题:

症状可能原因快速修复预防措施
”Context too long” 错误会话累积了过多上下文/compact,如需要再 /clear在 70% 时定期压缩
响应缓慢/延迟上下文使用率高(>75%)检查 /status,运行 /compact/status 监控上下文
”Rate limit exceeded”频繁请求导致 API 限流等待 2 分钟,简单任务使用 --model haiku批量操作,使用 /compact
Claude 忘记指令上下文溢出,CLAUDE.md 丢失创建检查点,/clear,重新加载 CLAUDE.md保持 CLAUDE.md 简洁(<500 行)
MCP 服务器无法连接服务器崩溃或配置错误claude mcp list,检查路径,重启服务器配置更改后测试服务器
每次都弹权限提示工具不在 allowedTools添加模式到 settings.json allowedTools使用通配符:Bash(git *)
更改不生效缓存的配置重启 Claude Code 会话配置更改前使用 /exit
会话无法恢复损坏的会话文件使用 /clear 重新开始使用 /exitCtrl+D 正常退出

  1. 检查上下文

    /status — 如果 >70%,运行 /compact

  2. 检查连接

    尝试简单命令 — 如果失败,检查网络

  3. 检查配置

    claude mcp list — 验证 MCP 服务器

  4. 检查权限

    查看错误信息 — 如有需要添加到 allowedTools

  5. 仍然失败?

    /doctor — 运行诊断并验证系统健康状况


症状原因解决方案
”Context too long”已使用 100% 上下文/clear/compact
响应缓慢上下文使用率高/compact
”Permission denied”安全设置检查 settings.local.json
Hook 不运行注册错误检查 settings.json matcher
MCP 工具未找到服务器未运行检查 mcp.json 配置
Agent 未找到文件命名问题检查 .claude/agents/
命令未找到路径错误检查 .claude/commands/

上下文级别推荐操作
0-50%正常继续
50-75%查询时更加具体
75-90%使用 /compact
90%+使用 /clear

“Tool execution failed”

  • 检查 settings.local.json 中的工具权限
  • 验证命令语法
  • 检查缺少的依赖

API Error 400: "tools.11.custom.name: String should match pattern '^[a-zA-Z0-9_-]{1,64}'"

原因:MCP 服务器名称包含无效字符。

解决方案:服务器名称只能包含字母、数字、下划线、连字符,最多 64 个字符。

Terminal window
# 错误示例
claude mcp add my-server@v1 -- npx server
# 正确示例
claude mcp add my-server-v1 -- npx server
MCP server 'my-server' not found

原因:服务器未正确注册或作用域错误。

Terminal window
# 1. 检查作用域设置
claude mcp list # 验证服务器是否已列出
# 2. 确保你在正确的目录中(本地作用域)
# 3. 重启 Claude Code 会话
# 4. 如有需要重新添加
claude mcp add my-server -s user -- npx @my/server
Error: Cannot find module 'C:UsersusernameDocuments'

原因:Windows 路径中的反斜杠未正确转义。

Terminal window
# 错误 -- 未转义反斜杠
claude mcp add fs -- npx -y @modelcontextprotocol/server-filesystem C:\Users\username\Documents
# 正确 -- 使用正斜杠
claude mcp add fs -- npx -y @modelcontextprotocol/server-filesystem C:/Users/username/Documents
# 正确 -- 转义反斜杠
claude mcp add fs -- npx -y @modelcontextprotocol/server-filesystem "C:\\Users\\username\\Documents"

Terminal window
# 调试所有 MCP 连接
claude --mcp-debug
# 在 Claude Code 内查看 MCP 状态
/mcp
错误原因解决方案
ECONNREFUSED服务器未运行检查 mcp.json 命令是否正确
Timeout after 30s初始化缓慢增加超时或检查服务器日志
Module not found缺少依赖在服务器目录运行 npm install
Permission denied文件访问受限检查服务器可执行文件的文件权限
ENOENT服务器二进制文件未找到验证 npx/npm 在 PATH 中
Invalid JSON服务器输出格式错误检查服务器版本兼容性

模式匹配问题:

// 错误 -- 过于具体
{
"allowedTools": ["Bash(npm test)"]
}
// 这只允许精确的 "npm test"
// 正确 -- 使用通配符
{
"allowedTools": ["Bash(npm *)"]
}
// 这允许任何 npm 命令

常用权限模式:

{
"allowedTools": [
"Bash(git *)",
"Bash(npm *)",
"Bash(pytest *)",
"Edit",
"Write",
"Read",
"mcp__serena__*",
"mcp__context7__*",
"Task"
]
}

Claude 在任务执行中停止响应:

可能的原因:

  1. 网络中断 — 检查网络连接
  2. API 速率限制 — 等待 1-2 分钟后重试
  3. 上下文耗尽 — 使用 /compact/clear
  4. 长时间运行的操作 — 部分 MCP 操作需要 30 秒以上

Terminal window
# npm 全局安装失败
# 以管理员身份运行 PowerShell
npm install -g @anthropic-ai/claude-code
# PATH 未更新
# 手动添加到 PATH:
$env:Path += ";$env:APPDATA\npm"
# 权限错误
# 检查杀毒软件是否阻止了 Node.js

一键健康检查

诊断脚本可即时排除故障。适用于 Windows(PowerShell)、macOS/Linux(Bash)。

完全重装

当所有其他方法都失败时的最终手段。用于损坏的安装、持续的神秘错误或重大更新后的问题。

  • 正常故障排除后仍存在的神秘错误
  • 损坏的配置文件
  • Claude Code 更新后的破坏性变更
  • 迁移到新机器(导出/导入工作流)
内容状态
Claude Code 二进制文件和 npm 包会删除
下载的模型和缓存会删除
本地会话数据会删除
配置文件可选(默认会备份)
内容状态
项目级 .claude/ 文件夹保留
项目 CLAUDE.md 文件保留
自定义 agents、skills、commands、hooks保留
MCP 服务器配置(mcp.json 中)保留