Claude Code settings.json 深度调优:接入 KingFlow 的每个参数怎么设
很多人第一次把 Claude Code 接到国内中转,都是照着一段配置复制粘贴,能跑就完事了。但 settings.json 里每一个参数其实都对应着一个真实的坑:为什么 base_url 不能带 /v1?API_TIMEOUT_MS 为什么要设到三百万?CLAUDE_CODE_ATTRIBUTION_HEADER 关掉到底省了什么?这篇教程就把接入 KingFlow 时会用到的每个参数逐个讲透,让你不是"抄一份能跑的配置",而是"知道自己在配什么"。
一、settings.json 在哪,整体长什么样
Claude Code 的配置文件路径是固定的:
~/.claude/settings.json
如果目录不存在就手动建一个。这个文件是标准 JSON,最外层是一个对象,我们关心两块:
env:一组环境变量,Claude Code 启动时读取,用来决定"请求发到哪、用什么身份、超时多久、要不要带署名头"。- 顶层的行为参数(如
effortLevel):控制模型推理的努力程度等运行时行为。
整体骨架是这样:
{
"env": {
"ANTHROPIC_BASE_URL": "https://www.kingflow.ai",
"ANTHROPIC_AUTH_TOKEN": "你的 KingFlow API Key",
"API_TIMEOUT_MS": "3000000",
"CLAUDE_CODE_ATTRIBUTION_HEADER": "0"
},
"effortLevel": "medium"
}
短短几行,但每一项都值得展开。下面逐个拆。
二、逐项详解
1. ANTHROPIC_BASE_URL —— 为什么绝对不能带 /v1
"ANTHROPIC_BASE_URL": "https://www.kingflow.ai"
这是最高频的翻车点。填的是根域名,不带任何路径后缀。
原因是 Claude Code 内部会自己拼接 API 路径。它拿到 base_url 之后,会在后面接上 /v1/messages 再发请求。也就是说,如果你写成 https://www.kingflow.ai/v1,客户端最终请求的地址会变成 https://www.kingflow.ai/v1/v1/messages——路径里出现两个 /v1,服务端直接 404 或者返回一堆看不懂的错误。
记住这条铁律:base_url 只到域名根,/v1 交给 Claude Code 自己拼。 你自己手动用 cURL 验证接口时才写全路径 https://www.kingflow.ai/v1/messages,那是另一回事,别把两者搞混。
2. ANTHROPIC_AUTH_TOKEN —— 你的身份凭证
"ANTHROPIC_AUTH_TOKEN": "你的 KingFlow API Key"
这是你在 KingFlow 控制台领取的 API Key,等价于官方的 API 密钥,Claude Code 会把它放进请求头做鉴权。几个注意点:
- 这是敏感信息,不要提交到 git 仓库,也别贴到聊天群里。
- KingFlow 走的是官方
/v1/messages协议,不是逆向接口,所以这个 Key 的用法和官方完全一致,没有任何私有魔改。 - 换 Key 后重启 Claude Code 生效即可。
3. API_TIMEOUT_MS —— 为什么设 3000000
"API_TIMEOUT_MS": "3000000"
这个值单位是毫秒,3000000 就是 3000 秒,差不多 50 分钟。看着夸张,其实是防长任务超时的保命配置。
Claude Code 干的很多活是长任务:让它读一整个陌生代码库、跨文件重构、批量补单测、生成大段文档。这类请求配合大上下文和较高的推理努力,单次响应几十秒甚至几分钟都正常。如果 timeout 设得太小(比如默认几十秒),任务跑到一半连接就被客户端主动掐断,你会看到莫名其妙的中断和重试,既浪费 token 又浪费时间。
把它拉到 3000000,等于告诉客户端"别急,慢慢等服务端把整个任务做完"。国内接 KingFlow 时节点 TTFT(首字节时间)通常只有 1-3s,真正耗时的是生成本身,所以这个大 timeout 基本只在极端长任务时才会触及,平时完全不影响体验。
4. CLAUDE_CODE_ATTRIBUTION_HEADER —— 关署名,提缓存命中率
"CLAUDE_CODE_ATTRIBUTION_HEADER": "0"
设成字符串 "0" 表示关闭。这个参数最容易被忽略,但对省钱很关键。
默认情况下 Claude Code 会在请求里附带一段署名/归因信息(attribution header),比如提交信息尾部的工具署名之类。问题在于,这类信息会混入请求内容,而 Prompt Cache 的命中依赖请求前缀的哈希一致性——只要前面的内容有一丁点变化,缓存哈希就对不上,本该命中的缓存就失效了,你又得按全价重新算一遍输入 token。
关掉署名头,请求内容更稳定,Prompt Cache 命中率就更高。而 Prompt Cache 能把重复上下文的成本砍掉 50%-90%,在反复围绕同一个代码库工作时,这个差距非常直观。所以这一项虽小,却是"设一次省一路"的典型。
想验证缓存到底生没生效?手动发两次带
cache_control的请求到https://www.kingflow.ai/v1/messages,看第二次返回的usage.cache_read_input_tokens是不是非零,非零就说明缓存透传正常。
5. effortLevel —— medium 与 high 的取舍
"effortLevel": "medium"
这个参数控制模型的推理努力程度,直接影响推理阶段消耗的 token 量。
medium:日常默认。相比 high 大约能省 20%-30% 的推理 token,对绝大多数编码任务(读代码、改单文件 bug、写单测、格式化)质量完全够用,性价比最高。high:遇到硬骨头时临时上调。比如复杂的跨文件架构推理、难缠的根因定位、需要多步严密推导的问题,high 会让模型想得更充分,但代价是推理 token 明显增多。
我的建议是长期挂 medium,遇到难题临时切 high,做完再切回来。别图省事一直开 high,那等于每道题都按最贵的档位付费。
三、参数对照表
| 参数 | 推荐值 | 作用 | 设错的后果 |
|---|---|---|---|
ANTHROPIC_BASE_URL |
https://www.kingflow.ai |
请求根地址,客户端自拼 /v1 | 带 /v1 → 路径重复 → 404 |
ANTHROPIC_AUTH_TOKEN |
控制台 API Key | 身份鉴权 | 缺失/错误 → 401 未授权 |
API_TIMEOUT_MS |
3000000 |
长任务不被掐断 | 太小 → 长任务中途超时 |
CLAUDE_CODE_ATTRIBUTION_HEADER |
"0" |
关署名,稳住缓存哈希 | 开着 → Prompt Cache 命中率下降 |
effortLevel |
"medium" |
控推理努力 | 一直 high → 白烧推理 token |
四、完整 settings.json 示例
把上面所有项拼起来,一份可以直接用的配置长这样:
{
"env": {
"ANTHROPIC_BASE_URL": "https://www.kingflow.ai",
"ANTHROPIC_AUTH_TOKEN": "sk-你的-KingFlow-APIKey",
"API_TIMEOUT_MS": "3000000",
"CLAUDE_CODE_ATTRIBUTION_HEADER": "0"
},
"effortLevel": "medium"
}
存到 ~/.claude/settings.json,重启 Claude Code 就生效。想临时换模型直接用 /model 命令切换,KingFlow 同时支持 claude-haiku-4-5(轻量省钱)、claude-sonnet-4-6(中档均衡)、claude-opus-4-8(重型攻坚),也接入了 DeepSeek、智谱 GLM、通义 Qwen、Kimi 等主流国产模型家族,简单任务丢给国产轻量档、复杂任务交给 Claude Opus,能进一步压成本。
五、常见配置错误排查
- 返回 404 / 路径怪异:九成是
ANTHROPIC_BASE_URL带了/v1。去掉后缀,只留根域名。 - 401 未授权:
ANTHROPIC_AUTH_TOKEN没填、填错,或前后混入了空格/引号。重新从 KingFlow 控制台复制。 - 长任务频繁中断:
API_TIMEOUT_MS太小或写成了数字类型而非字符串。确认是"3000000"。 - JSON 报错启动失败:多半是漏了逗号、多了尾逗号,或引号用了中文引号。用编辑器的 JSON 校验过一遍。
- 缓存一直不命中、账单偏高:确认
CLAUDE_CODE_ATTRIBUTION_HEADER是"0",再用 cURL 双发法验证cache_read_input_tokens。 - 感觉又慢又贵:检查
effortLevel是不是被长期设成了 high。
六、FAQ
Q1:base_url 到底能不能带 /v1?
不能。Claude Code 会自动拼 /v1/messages,你再带就重复了。只有手动 cURL 验证接口时才写全路径。
Q2:API_TIMEOUT_MS 设 3000000 会不会让请求变慢? 不会。它只是超时上限,不是等待时间。请求该多快还多快,接 KingFlow 国内节点 TTFT 一般 1-3s,这个大值只在极端长任务时兜底。
Q3:effortLevel 设 high 是不是回答质量一定更好? 不一定。日常编码任务 medium 已经够用,high 主要在复杂推理题上有边际收益,代价是推理 token 变多。建议默认 medium,难题临时上调。
Q4:关掉 attribution header 有副作用吗? 对功能没有影响,只是不再附带工具署名信息,换来的是更稳定的请求前缀和更高的 Prompt Cache 命中率,纯赚。
Q5:价格怎么算?
KingFlow 用官方 /v1/messages 协议并完整透传 Prompt Cache,相比不支持 Cache 的平台实际能省 3-5 倍,Cache 本身还能砍 50%-90% 成本,具体价格以官网 www.kingflow.ai 为准。
官网:https://www.kingflow.ai | 更多教程:https://yemaochuanmei.github.io/