Claude Code 调优实战指南:解决降智与 Token 暴耗的完整方案
从社区实测配置出发,系统梳理 Claude Code 的 settings.json 关键参数,帮你关掉自适应降智、控制思考预算、避开 Token 陷阱,并提供三个量化指标来判断模型是否真的被降智。
Claude Code 调优实战指南:解决降智与 Token 暴耗的完整方案
背景
如果你最近在用 Claude Code,可能也遇到过这些现象:
- 模型回答越来越浅,复杂问题一两句就结束了
- 明明没做什么,Token 就烧掉了一大截
- Plan 模式下思考过程越来越短,感觉"它懒了"
- 跑到一半就问你"要继续吗",明明任务还没完成
这些不是错觉。Anthropic 会动态调整模型的推理预算,也就是所谓的"自适应思考(Adaptive Thinking)"。在高峰期或系统负载高时,模型拿到的思考额度会被压缩,直接影响输出质量。
好消息是:这些可以通过本地配置来对抗。
一、核心配置:~/.claude/settings.json
这是最有效的干预入口。把下面这段配置写入 ~/.claude/settings.json:
{
"effortLevel": "high",
"env": {
"CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING": "1",
"MAX_THINKING_TOKENS": "31999",
"CLAUDE_CODE_DISABLE_1M_CONTEXT": "1",
"CLAUDE_CODE_AUTO_COMPACT_WINDOW": "200000"
}
}
下面逐项解释每个字段的作用。
1. effortLevel
"effortLevel": "high"
告诉 Claude Code 对每个任务都使用更强的推理能力。
可选值:
"normal"— 默认档,系统自动决定推理深度"high"— 推荐设置,明显提升复杂任务质量"max"— 最强档,但即使是简单任务也会触发长时间思考,适合追求极致质量但不在乎速度的场景
日常使用推荐 "high",在需要高质量代码审查或架构决策时临时改成 "max"。
2. CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING
"CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING": "1"
这是对抗降智最直接的配置。
Adaptive Thinking(自适应思考)是 Claude 根据系统负载和任务判断来动态分配推理预算的机制。听起来合理,但实际上在高峰期往往会给你分配远低于需要的额度,导致回答质量下降。
设置为 "1" 后,关闭这个自动调整,让模型按照你指定的预算来思考,而不是被系统动态缩水。
3. MAX_THINKING_TOKENS
"MAX_THINKING_TOKENS": "31999"
给模型设置一个明确的思考预算上限。
参考值:
31999(约 32k):日常编程任务足够,平衡质量与速度65536(64k):复杂重构、架构设计类任务131072(128k):拉满,适合最高要求场景,但响应时间会明显变长
建议从 32k 开始,根据实际任务复杂度调整。
4. CLAUDE_CODE_DISABLE_1M_CONTEXT
"CLAUDE_CODE_DISABLE_1M_CONTEXT": "1"
关闭 1M 超长上下文窗口。
虽然 1M 上下文听起来很强,但实际上极长的上下文会让模型在处理每个 token 时负担更重,反而影响推理质量。对于绝大多数开发任务来说,200k 以内的上下文已经足够。
5. CLAUDE_CODE_AUTO_COMPACT_WINDOW
"CLAUDE_CODE_AUTO_COMPACT_WINDOW": "200000"
每当上下文长度超过 200k token 时,自动压缩一次。
这个配置和上一条配合使用,确保上下文始终保持在一个模型能高效处理的范围内,避免"越聊越笨"的退化现象。
可选追加:谨慎模式
"CLAUDE_CODE_MAKE_NO_MISTAKES": "1"
开启后,模型会切换到更谨慎的执行模式,减少低级错误(如变量名拼错、逻辑短路、边界条件漏判)。
代价是执行速度略慢。如果你在做高风险改动(比如数据库迁移、核心逻辑重构),建议开启。
二、一个必须避开的巨坑
"CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1"
这个配置看起来合理,实际上代价极高——不要轻易设置。
本意是阻止 Claude Code 把使用数据上报给 Anthropic,保护隐私。但它有一个隐藏的副作用:
订阅用户的上下文缓存有效期从 1 小时缩短到 5 分钟。
这意味着什么?只要你的对话缓存还有效(默认 1 小时内),续接对话的上下文加载基本不额外消耗 Token。一旦缓存被砍到 5 分钟,稍微停一下再回来,就要重新加载系统提示、项目记忆和所有插件配置——每次约 4 到 6 万 Token。
如果你每天用 Claude Code 超过 2 小时,这个配置开启后的 Token 消耗可能是关闭时的数倍。
三、省 Token 的使用习惯
除了配置调整,使用习惯本身对 Token 消耗影响也很大。
不要频繁新开对话
这是单个习惯里性价比最高的一条。
每次新开对话,Claude Code 会消耗 4 到 6 万 Token 来加载:
- 系统提示(System Prompt)
- 项目记忆(Memory / CLAUDE.md)
- 已启用的插件和工具列表
如果当前任务还没结束,或者距离上一条消息不超过 1 小时,不要新开对话,在原对话里继续。缓存有效期内的续接几乎不额外消耗额度。
四、怎么判断是否真的被降智了?
主观感受不可靠,这里提供三个量化指标。
指标 1:读改比
正常状态下,Claude 会大量读取上下文再做修改,读改比约为 6.6 : 1。
降智后,它会"看一眼就改",读改比下降到 2 : 1 左右。
如果你发现模型改了一大堆代码,但读取的上下文很少,这通常是降智信号。
指标 2:Plan 模式思考深度
在 Plan 模式下,正常状态的思考过程大约是 2200 个 token。
降智后,这个数字会跌到 600 左右,思考过程变得非常浅,很多推理步骤被跳过。
指标 3:中断频率
正常情况下,Claude Code 会持续执行直到任务完成再汇报。
如果你发现它频繁在任务中途停下来问"要继续吗",说明它的执行置信度下降了——这是降智的典型表现之一。
工具辅助
可以访问 aistupidlevel.info 查看各模型在不同时间段的实时降智情况。
根据社区统计,Claude Opus 4.6 通常在 晚上 7 点和 11 点 前后会有较明显的性能下滑,这两个时间段可以考虑避开高负荷任务,或者临时提高 MAX_THINKING_TOKENS 来补偿。
五、完整配置参考
{
"effortLevel": "high",
"env": {
"CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING": "1",
"MAX_THINKING_TOKENS": "31999",
"CLAUDE_CODE_DISABLE_1M_CONTEXT": "1",
"CLAUDE_CODE_AUTO_COMPACT_WINDOW": "200000",
"CLAUDE_CODE_MAKE_NO_MISTAKES": "1"
}
}
追求极致质量时,把 effortLevel 改成 "max",MAX_THINKING_TOKENS 改成 "131072"。
小结
Claude Code 的降智问题本质上是平台在高峰期动态压缩推理预算的副作用,并不是模型能力变差,而是分配给你的计算资源变少了。通过本地配置,我们可以:
- 关掉自适应思考,让系统不再自动降档
- 设定固定思考预算,确保模型有足够的推理空间
- 控制上下文长度,避免超长上下文反向拖累质量
- 避开已知高峰时段,减少和系统降智窗口重叠的概率
这些手段不能完全消除降智,但可以显著提高稳定性,让 Claude Code 的表现更接近它真正的能力上限。
如果你也在用 Claude Code,不妨先把这套配置写进去,再用读改比和思考深度两个指标做一次前后对比,看看差异有多大。
更多推荐


所有评论(0)