1. 为什么我要把 Claude Code 接到 GLM4.5 上
Claude Code 是 Anthropic 推出的终端 AI 编程工具,它能在命令行里直接读写项目文件、跑测试、改 bug,适合习惯在终端里干活的开发者。GLM4.5 是智谱推出的代码能力较强的模型,在代码补全、重构、解释报错这些场景里表现稳定,价格也比不少海外模型友好。把这两个东西组合起来,就是一套「终端交互 + 国产模型」的 AI 编程方案,适合预算敏感、又想在本地快速跑通统一 Key 通道的开发者。
我之前的痛点是:不同工具要配不同的 Key,环境变量散落在各处,换台机器就得重新翻文档。后来我把请求统一走 TaoToken 的 API 通道,Claude Code 只认一个 Base URL 和一个 Key,配置集中到settings.json里,迁移和排障都省事。这篇就按「装环境 → 拿 Key → 写配置 → 验证对话 → 排错」的顺序,把 Claude Code + GLM4.5 的落地过程讲清楚,配置骨架可以直接复制。
需要先说明一点:Claude Code 早期版本在 Windows 上依赖 WSL,后来版本对 Windows 原生支持好了很多,只要机器里有 Node.js 和 Git Bash 就能跑。下面以 Windows 11 为主,macOS / Linux 的差异我会单独标出来。
2. TaoToken 前置:统一 Key 通道怎么准备
TaoToken 在这里的角色是「统一入口」:Claude Code 发出的请求先到 TaoToken 的 API 地址,再由它转发到对应模型。这样做的好处是,你不需要在 Claude Code 里硬编码某个厂商的地址,换模型时只改配置里的模型名,Key 和 Base URL 保持不变。
第一步是拿到 API Key。打开 TaoToken 官网https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content=,注册登录后进入控制台,在 API Keys 页面创建一个新 Key。创建时建议给它起个能认出来的名字,比如claude-code-glm,方便以后区分是哪个工具在用。Key 只在创建时完整显示一次,复制后先存到密码管理器里。
第二步是确认接入地址。TaoToken 的 API 根地址是https://taotoken.net/api,注意这个地址不带任何查询参数。Claude Code 需要的ANTHROPIC_BASE_URL就填这个根地址,后面不要自己拼/v1之类的路径,具体路径由客户端和通道约定处理。
第三步是确认模型名。GLM4.5 在通道里的模型标识,以控制台「模型列表」页面显示的为准,常见写法是glm-4.5这类形式。配置时把模型名填进settings.json的model字段。如果你不确定,先在控制台用「模型对话」页面发一条测试消息,确认这个模型名能正常返回,再写进配置文件。
注意:Key 属于敏感凭证,不要提交到 Git 仓库,也不要贴到公开的 issue 里。建议用环境变量引用,或者放在本地的
settings.json并加入.gitignore。
3. 可复制的 settings.json 配置骨架
Claude Code 的配置分两层:一层是环境变量(放 Key 和 Base URL),一层是项目或用户级的settings.json(放模型、权限、工具开关等)。我习惯把凭证放环境变量,把行为配置放settings.json,这样配置文件可以跟着项目走,凭证不落地。
先看环境变量。Windows 11 图形界面下,搜索「环境变量」→ 编辑系统环境变量 → 用户变量 → 新建,依次添加:
| 变量名 | 变量值 | 说明 |
|---|---|---|
ANTHROPIC_BASE_URL | https://taotoken.net/api | 统一通道根地址 |
ANTHROPIC_AUTH_TOKEN | 你的 TaoToken Key | 鉴权用,优先于 API_KEY |
ANTHROPIC_API_KEY | 你的 TaoToken Key | 部分版本读取这个变量 |
macOS / Linux 下写进~/.zshrc或~/.bashrc:
export ANTHROPIC_BASE_URL="https://taotoken.net/api" export ANTHROPIC_AUTH_TOKEN="sk-你的TaoTokenKey" export ANTHROPIC_API_KEY="sk-你的TaoTokenKey"改完环境变量要重开终端,或者source ~/.zshrc让它生效。Windows 下改完用户变量,已经打开的 PowerShell 不会自动刷新,关掉重开。
然后是settings.json。Claude Code 会读取用户级配置(Windows 在%USERPROFILE%\.claude\settings.json,macOS / Linux 在~/.claude/settings.json),也会读取项目级配置(项目根目录的.claude/settings.json)。下面这份骨架可以直接复制,把model换成你控制台确认过的 GLM4.5 模型名:
{ "model": "glm-4.5", "env": { "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "ANTHROPIC_AUTH_TOKEN": "sk-你的TaoTokenKey" }, "permissions": { "allow": [ "Read", "Edit", "Bash(git status)", "Bash(git diff:*)", "Bash(npm run test:*)" ], "deny": [ "Bash(rm -rf:*)", "Bash(curl:*)" ] }, "includeCoAuthoredBy": false }几个字段说明一下。model决定默认用哪个模型,写 GLM4.5 的标识。env里可以再兜底一份 Base URL 和 Token,这样即使系统环境变量没配好,Claude Code 也能读到。permissions.allow是白名单,我一般只放开读文件、改文件、看 git 状态和跑测试这几类,deny里挡掉危险命令。includeCoAuthoredBy设成false,提交信息里就不会自动加协作者署名,看个人习惯。
如果你不想把 Key 写进settings.json,可以把env整段删掉,只靠系统环境变量。两种方式选一种就行,不要两边都写不同的值,否则排查起来容易懵。
4. 安装 Claude Code 并发起第一次验证对话
环境准备好后,装 Claude Code。前提是 Node.js 18 以上,我本地用的是 21。先验证:
node -v npm -v然后全局安装:
npm install -g @anthropic-ai/claude-code装完在任意目录执行claude,第一次启动会引导你做一些初始化选择。如果提示找不到命令,检查 npm 全局 bin 目录有没有在 PATH 里。Windows 下可以用npm config get prefix看全局目录,把它加到用户 PATH。
验证环节我建议单独建一个空目录,避免误改真实项目:
mkdir cc-glm-test && cd cc-glm-test claude进入交互模式后,发一条最简单的消息,比如「用一句话说明这个目录里有什么文件」。如果配置正确,Claude Code 会调用 GLM4.5 并返回结果,同时可能会请求读取目录的权限,按提示允许即可。看到正常回复,说明 Key、Base URL、模型名三者都对上了。
再补一个更贴近编程的验证:在测试目录里建一个hello.js,内容随便写个函数,然后在 Claude Code 里说「给 hello.js 里的函数加一行注释」。观察它是否能定位文件、发起编辑、并给出 diff。这一步能同时验证模型响应和文件工具权限是否配好。
如果第一次对话就报 401,多半是 Key 或 Token 变量名不对;报 404 或模型不存在,多半是模型名写错或 Base URL 多了路径;一直转圈没响应,检查网络和通道状态。下一节集中讲这些。
5. 本篇常见错排查
报错一:401 Unauthorized或invalid api key。先确认ANTHROPIC_AUTH_TOKEN和ANTHROPIC_API_KEY的值是不是完整的 Key,有没有多余空格或换行。Windows 图形界面粘贴时容易带上尾部空格。再确认 Key 没有在控制台被删除或禁用。如果settings.json和环境变量都配了,检查两边值是否一致。
报错二:404或model not found。大概率是模型名不对。回到 TaoToken 控制台的模型列表,复制准确的模型标识,替换settings.json里的model字段。另外确认ANTHROPIC_BASE_URL是https://taotoken.net/api,不要自己加/v1/messages这类后缀。
报错三:命令找不到claude。npm 全局目录不在 PATH。Windows 下执行npm config get prefix,把输出路径加进用户 PATH,重开终端。macOS / Linux 下检查npm bin -g或$(npm prefix -g)/bin是否在 PATH。
报错四:启动后卡住无响应。先确认本机网络能正常访问 TaoToken 的 API 地址,可以用curl -I https://taotoken.net/api看是否有响应。如果公司网络有出口限制,换一个网络环境再试。另外确认没有其他工具占用同名环境变量。
报错五:能对话但不能改文件。这是权限问题,不是模型问题。检查settings.json的permissions.allow里有没有放开Edit和Read。Claude Code 在交互中也会弹权限确认,如果之前选了「拒绝」,可以在会话里重新授权,或者重启会话。
报错六:Windows 下提示需要 Bash。老版本 Claude Code 依赖 Git Bash。装一个 Git for Windows,保持默认设置,重启终端。较新版本对 Windows 原生支持更好,如果仍报错,升级 Claude Code 到最新版:npm update -g @anthropic-ai/claude-code。
6. 后续怎么用:把配置沉淀成习惯
配置跑通之后,我建议把settings.json按项目分两份:用户级放通用模型和权限,项目级放这个项目特有的白名单命令,比如Bash(pnpm test:*)。这样换项目时不用重复配 Key,只调整权限就行。
如果你打算长期用 Claude Code 做编码和 Agent 任务,可以关注 TaoToken 的 Coding Plan 页面,看是否有适合持续调用的方案;日常验证模型响应是否正常,用控制台的模型对话页面最快;需要新建或轮换 Key,去 API Keys 页面操作;接入细节和字段说明,查接入文档。这几个入口分工清楚,排障时按「Key → 地址 → 模型名 → 权限」的顺序查,基本能覆盖大部分问题。
最后留一个实用习惯:每次改完settings.json,先在测试目录跑一次claude发条消息,确认模型能回,再进真实项目。配置文件是 JSON,少个逗号就会静默失效,用编辑器自带的 JSON 校验能省不少时间。