0x00 前言
在《从零开始搭建 AI 环境》中,我们介绍过 Agent 的生态位:
| 大模型 | 供应商 | Agent | 擅长处理场景 |
|---|---|---|---|
| Claude | Anthropic | Claude Code | 编码 |
| Gemini | Gemini CLI | 视觉效果(图像等) | |
| GPT | OpenAI | Codex | 通用 |
| … | … | … | … |
其中 Claude Code 是 Anthropic 官方推出的编码专用 Agent。它围绕 Claude 模型深度优化,在代码理解、项目修改和上下文管理上,体验确实比很多通用 Agent 更稳。
下文简称 Claude Code 为 CC
但是 Anthropic 对国内用户并不友好。国内 IP / 用户访问 Anthropic 产品时,注册、登录、认证都很容易受限。
所以如果要在国内环境使用 CC,少不了一番折腾。

0x10 CLI 安装
CC 的官方服务链路在国内基本不可用,因为 Anthropic 会对访问来源做限制,挂代理也未必稳定。
不过 CLI 本体仍然可以通过 npm 安装:
npm install -g @anthropic-ai/claude-code
安装完成后,在终端执行 claude,即可启动 CC CLI:

0x20 绕过登录认证界面
默认情况下,CC 启动时会走 Anthropic 官方链路做 OAuth 登录认证。但因为国内访问受限,通常会直接报错:
Unable to connect to Anthropic services
Failed to connect to api.anthropic.com: ERR_BAD_REQUEST
处理方式也很简单:让 CC 跳过官方登录引导。
CC 启动时会检查配置文件 ~/claude.json。如果配置里声明了 "hasCompletedOnboarding": true,它会认为初始化引导已经完成,于是直接进入工作界面,不再弹出 OAuth 页面:

此时选择 Yes, I trust this folder,即可进入命令行界面:

不过这时还不能直接正常调用模型。右下角会出现 Not logged in · Run /login 提示,意思是它希望你执行 /login,重新走官方登录认证。
不用理会,我们直接把 CC 接入自己的 new-api 网关。
0x30 对接 new-api
CC 面向 Claude 模型设计,原生使用的是 Anthropic 协议。前面在《new-api 对接 Copilot 笔记》中,我们已经通过 Copilot 获得了 Claude 模型调用能力,因此这里可以直接复用。
修改 CC 的配置文件 ~/.claude/settings.json:
{
"env": {
"ANTHROPIC_AUTH_TOKEN": "sk-new-api-key-xxx",
"ANTHROPIC_BASE_URL": "http://localhost:3000",
"ANTHROPIC_DEFAULT_HAIKU_MODEL": "claude-haiku-4.5",
"ANTHROPIC_DEFAULT_HAIKU_MODEL_NAME": "Claude Haiku 4.5(Copilot)",
"ANTHROPIC_DEFAULT_OPUS_MODEL": "claude-sonnet-4.6",
"ANTHROPIC_DEFAULT_OPUS_MODEL_NAME": "Claude Sonnet 4.6(Copilot)",
"ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4.5",
"ANTHROPIC_DEFAULT_SONNET_MODEL_NAME": "Claude Sonnet 4.5(Copilot)",
"ANTHROPIC_MODEL": "claude-haiku-4.5"
},
"autoUpdatesChannel": "latest",
"includeCoAuthoredBy": false
}
注意:
ANTHROPIC_BASE_URL与 OpenCode 的baseURL不同,末尾不需要带/v1- Haiku、Sonnet、Opus 是 Claude 的三档模型名称,但 CC 不会自动按强弱切换,具体使用哪个取决于当前配置和命令行为
- 由于 Copilot 没有提供 Opus 模型,这里用 Sonnet 4.6 代替 Opus 档位
配置完成后,在终端再次运行 claude。此时不再需要官方登录页,而是直接进入对话界面。
可以和大模型交互测试一下:

0x40 cc-switch 一键配置
如果觉得手写配置文件麻烦,可以用 cc-switch 直接生成。
先在 cc-switch 顶部选中 Claude Code,然后点击右上角的 + 添加模型供应商:

参考下图配置即可:

保存后,cc-switch 会自动把配置同步到 ~/.claude/settings.json。
重启 CC 即可生效。
0xF0 常见问题
0xF1 为什么非要绕过登录
因为 Anthropic 对国内访问限制很严格,注册、登录、OAuth 认证经常不可用。这不是配置写错,而是官方链路本身不可达。
既然模型调用已经通过 new-api 转发到可用渠道,那么官方登录流程对当前使用方式就没有意义。跳过登录引导,直接接自己的网关,是最务实的做法。
0xF2 hasCompletedOnboarding 有风险吗
hasCompletedOnboarding 的作用只是告诉 CC:「初始化引导已经完成,可以直接进入工作状态」。
它本身不提供模型能力,也不会让你凭空获得 Anthropic 官方服务权限。真正决定能不能调用模型的,是后面 settings.json 里配置的 ANTHROPIC_AUTH_TOKEN 和 ANTHROPIC_BASE_URL。
而且官方自身在某些企业部署场景也支持这种方式,所以它几乎没有风险。
0xF3 CC / OpenCode 调用 Claude 模型有什么区别
如果两者最终都通过 new-api 转发到同一个 Claude 上游模型,那么底层模型能力是一样的。
区别在于:
- Claude Code 是 Anthropic 为自家模型深度调优的编码 Agent,工具链、上下文管理和编码提示词都围绕 Claude 优化,编码体验更贴近 Claude 的最佳形态
- OpenCode 是通用 Agent,优势是多模型适配和生态扩展,但对单个模型的优化不如官方 Agent 极致
简而言之:同样的 Claude 模型,CC 作为「官方出品」往往能发挥出更高的编码质量;OpenCode 则更适合作为多模型统一入口。