Claude Code
在 Claude Code CLI 和 VS Code 扩展中使用 LynShen。Claude Code 使用 Messages 协议。
Claude Code 是 Anthropic 的终端编程 Agent。本页按 Claude Code 2.1.296 和 2026-10-11 的官方文档编写。
接入方式
- 协议:Messages。Claude Code 请求
POST /v1/messages。 - Base URL:
https://api.lynshen.org。不要带/v1,Claude Code 会自己拼接/v1/messages。 - 认证:
ANTHROPIC_AUTH_TOKEN以Authorization: Bearer发送密钥。官方建议使用它。ANTHROPIC_API_KEY以x-api-key发送,交互模式下第一次使用需要你确认。LynShen 两种都接受。
配置文件位置
| 范围 | macOS、Linux | Windows |
|---|---|---|
| 用户级(推荐) | ~/.claude/settings.json | %USERPROFILE%\.claude\settings.json |
| 项目级(不提交到仓库) | <项目>/.claude/settings.local.json | 同左 |
不要把密钥写进项目的 .claude/settings.json,这个文件通常会提交到仓库。同一个变量同时出现在 settings.json 的 env 和 shell 环境中时,settings.json 的值生效。
配置步骤
-
安装 Claude Code。
-
编辑
~/.claude/settings.json,写入以下内容:{ "env": { "ANTHROPIC_BASE_URL": "https://api.lynshen.org", "ANTHROPIC_AUTH_TOKEN": "sk-...", "ANTHROPIC_MODEL": "claude-sonnet-5", "ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-opus-5-5", "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-5", "ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-sonnet-4-6", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": "1", "API_TIMEOUT_MS": "600000" } } -
把模型 ID 换成你的
/v1/models中的值。 -
运行
claude。设置了凭据变量后,Claude Code 不会显示登录界面。 -
发送一条消息,确认有回复。
也可以只用环境变量临时运行:
export ANTHROPIC_BASE_URL="https://api.lynshen.org"
export ANTHROPIC_AUTH_TOKEN="sk-..."
claude选择模型
| 变量 | 作用 |
|---|---|
ANTHROPIC_MODEL | 默认模型。 |
ANTHROPIC_DEFAULT_OPUS_MODEL | /model 中 Opus 选项对应的模型。 |
ANTHROPIC_DEFAULT_SONNET_MODEL | /model 中 Sonnet 选项对应的模型。 |
ANTHROPIC_DEFAULT_HAIKU_MODEL | Haiku 选项和后台任务使用的模型。替代已废弃的 ANTHROPIC_SMALL_FAST_MODEL。 |
CLAUDE_CODE_SUBAGENT_MODEL | 子 Agent 使用的模型。 |
ANTHROPIC_CUSTOM_MODEL_OPTION | 在 /model 列表中加一个自定义条目。可以配合 _NAME 和 _DESCRIPTION 后缀的变量。 |
模型选择的优先级从高到低:会话中的 /model、命令行 --model、ANTHROPIC_MODEL、settings.json 中的 model。
设置 CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1 后,Claude Code 启动时请求 GET /v1/models,并把模型加入 /model 列表。Claude Code 只保留 ID 中包含 claude 或 anthropic 的模型。
使用非 Claude 模型
LynShen 会把 Claude Code 的 Messages 请求转换给 GPT、DeepSeek 等模型,所以把模型变量设为这些模型也能工作。但 Claude Code 官方不支持非 Claude 模型,需要注意:
- 通过 Messages 调用 GPT 模型时,通常看不到思考文字。
- 工具调用的稳定性取决于模型。
- Claude Code 的提示词和工具针对 Claude 设计。
显示推理
- 按
Option+T(macOS)或Alt+T(Windows、Linux)开关思考。 - 在
/config中修改默认值。设置保存为alwaysThinkingEnabled。 - 按
Ctrl+O打开 transcript 视图,思考内容以灰色斜体显示。 - 在提示词中写
ultrathink可以要求更深的推理。 - 在第三方网关上,
MAX_THINKING_TOKENS=0的效果是不发送thinking参数,而不是关闭思考。
LynShen 把上游的思考文字放在 thinking 块中返回,签名以 mz2. 开头。不要手动修改会话中的签名。
VS Code 扩展
在 VS Code 的用户设置中添加:
{
"claudeCode.environmentVariables": [
{ "name": "ANTHROPIC_BASE_URL", "value": "https://api.lynshen.org" },
{ "name": "ANTHROPIC_AUTH_TOKEN", "value": "sk-..." }
]
}~/.claude/settings.json 中的值会传给扩展启动的进程,但扩展自己的登录检查读不到它们。所以扩展需要单独配置。
常见问题
| 现象 | 原因和处理 |
|---|---|
| 404 | ANTHROPIC_BASE_URL 带了 /v1。删除 /v1。 |
| 仍然显示登录界面 | 凭据变量没有生效。确认 settings.json 是合法的 JSON,并写在用户级文件中。 |
400,提示 context_management 或 Extra inputs are not permitted | LynShen 不转发 anthropic-beta 请求头,依赖测试版功能的字段可能被上游拒绝。设置 CLAUDE_CODE_DISABLE_EXPERIMENTAL_BETAS=1。 |
400,提示 temperature | 新 Claude 模型只接受默认采样参数。删除自定义的 temperature 设置。 |
| 上下文统计不准 | LynShen 不提供 /v1/messages/count_tokens,Claude Code 改用本地估算。这不影响使用。 |
| 长任务中断 | 提高 API_TIMEOUT_MS。确认使用 https://api.lynshen.org。 |
/model 列表中没有国内模型 | 自动发现只保留 ID 含 claude 的模型。用 ANTHROPIC_MODEL 或 ANTHROPIC_CUSTOM_MODEL_OPTION 指定。 |
来源
2026-10-11 查阅: