如果你最近感觉 Claude 编码变差了不少,这可能是因为Anthropic 悄悄修改了默认配置参数,而不是模型的问题。
Agent 思考变少了、语法更差、工具调用减少,注释也被去掉了。
模型本身没有退化,Anthropic只是把默认执行力度(effort)从"high"降到了"medium"而且没有发公告。
下面这 10 个隐藏设置可能大多数人从未动过,但是他们可能是削弱Claude Code 的原因。
Effort 参数
默认 effort 在 3 月被调低后,Agent 会主动规避深度推理。得强制引擎用完全部算力配额。会话中
/effort high
可以临时解决,但最好还是用配置来做
export CLAUDE_CODE_DEFAULT_EFFORT=high
自适应思考关闭开关
2026 年 2 月起,Claude 开始自主决定每轮分配多少算力。遇到它判定为"简单"的任务,直接跳过思考步骤,然后就是灾难性的下游 bug。
用这个环境变量给每一轮固定推理预算:
export CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1
默认权限模式
默认安装几乎每次工具调用都要手动确认,有人在一个上午弹出 47 次确认提示。所以打开
settings.json
,把默认模式改为
acceptEdits
(可信仓库)或
plan
(不熟悉的代码库)。
{ "permissions": { "defaultMode": "acceptEdits" } }
Allow 和 Deny 规则
没有显式规则Claude 连
git status
这种基础命令都会停下来要许可。而且它还会悄悄读取
.env
和
.ssh
目录。所以可以在
settings.json
中把边界硬编码清楚。
{
"permissions": {
"allow": ["Read", "Glob", "Edit", "Bash(git status)", "Bash(npm run *)"],
"deny": ["Read(**/.env*)", "Read(**/.ssh/**)", "Bash(sudo *)"]
}
}
会话中切换模型
用 Opus 回答简单的正则问题是在烧钱,因为Opus 的价格是 Sonnet 的 5 倍。动态路由:80% 的日常编码用
/model sonnet
,复杂架构重构时切
/model opus
,快速格式化降到
/model haiku
。
定向压缩
上下文窗口填满后,
/compact
会泛泛地总结会话,关键架构决策当场丢失。正确的用法是指定压缩方向:
/compact preserve all architecture decisions, file paths mentioned, and error messages
持久化项目记忆
如果要重复解释项目用
pnpm
而不是
npm
,说明这个工作流已经坏了。所以执行一次
/memory add "this project uses pnpm, not npm"
,让信息持久化到本地后续每次会话启动时自动加载。
控制 MCP Token 膨胀
Model Context Protocol (MCP) 服务器能力很强,但每个连接的服务器每轮加载超过 18,000 token 的开销。挂了 5 个空闲服务器,还没敲 Prompt 就已经烧掉 90,000 token。所以定期用
/mcp
把当前迭代用不上的服务器果断断开。
工具调用后自动格式化
Claude 写完代码还要手动跑 Prettier,执行循环就低效了。在
settings.json
里加一个
PostToolUse
钩子,Agent 写完
.ts
文件即刻触发格式化。
{
"hooks": {
"PostToolUse": [
{
"matcher": "Write(*.ts)",
"hooks": [{ "type": "command", "command": "npx prettier --write $file" }]
}
]
}
}
工具调用前日志过滤
让 Claude 直接读一个 10,000 行的服务器日志那上下文会被撑爆,所以可以用
PreToolUse
钩子先把文件过一遍
grep
:
{
"hooks": {
"PreToolUse": [
{
"matcher": "Bash(cat *log*)",
"hooks": [{ "type": "command", "command": "grep -n 'ERROR\\|WARN' $file | head -50" }]
}
]
}
}
所以Claude Code 是好用还是不好用,区别就在于环境变量和这个JSON的配置文件上。花 60 秒配好设置比换个模型要有用的多。
by Shashwat