☰
Ubuntu 安装 Claude Code 并配置智谱 GLM-4.7 完整教程:TaoToken 统一 Key 接入与 settings.json 骨架
2026/9/25 15:03:26 网站建设 项目流程

1. Ubuntu 上装 Claude Code 到底卡在哪

如果你在 Ubuntu 上搜「Claude Code 安装」,大概率会看到两种结果:一种是官方文档里几行 npm 命令,另一种是各种「一键脚本」但跑完不知道发生了什么。真正动手时,问题往往不在安装本身,而在装完之后——Claude Code 默认要连 Anthropic 的服务,而你想让它调用智谱 GLM-4.7,就得改settings.json里的ANTHROPIC_BASE_URL和ANTHROPIC_AUTH_TOKEN。这两个值填错一个,终端就会一直转圈或者直接报鉴权失败。

更麻烦的是多模型场景。你可能同时想用 GLM-4.7 做代码生成、用别的模型做长文本总结,每个模型一套 Key、一套 Base URL,散落在不同的配置文件里,改一次要翻三个地方。这篇就聚焦 Ubuntu 环境,把 Claude Code 装好,再用 TaoToken 的统一 Key 把 GLM-4.7 接进来,最后给你一份可以直接复制的settings.json骨架和终端验证命令。适合已经在用 Ubuntu 做开发、想低成本试 Claude Code + 国产模型组合的人。

2. 前置准备:Node.js、npm 权限与 TaoToken Key

Claude Code 是 npm 包,所以第一步是确认 Node.js 版本。Ubuntu 自带的 Node 往往偏旧,建议 18 或更高。

node --version npm --version

如果版本低于 18,用 NodeSource 的脚本装 LTS:

curl -fsSL https://deb.nodesource.com/setup_lts.x | sudo -E bash - sudo apt-get install -y nodejs

装完再node --version确认一次。这一步网络耗时较长,属于正常现象。

接下来是 npm 全局权限。直接npm install -g在 Ubuntu 上大概率遇到EACCES: permission denied,因为全局包默认往/usr/lib/node_modules/写,需要 root。不要用sudo npm install -g,那样后续 Claude Code 读写配置会带 root 属主,反而添乱。正确做法是把 npm 全局目录指到用户目录:

mkdir -p ~/.npm-global npm config set prefix '~/.npm-global' echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc source ~/.bashrc

然后去 TaoToken 拿统一 Key。访问官网 https://taotoken.net/?utm_source=taotoken_aicg_blog_end&utm_medium=csdn&utm_campaign=rewrite&utm_content= ,注册后在控制台创建 API Key。这个 Key 的好处是:你不需要为 GLM-4.7 单独去智谱开一个 Key,TaoToken 把多家模型的鉴权统一到一把 Key 上,Claude Code 里只填一个ANTHROPIC_AUTH_TOKEN就行。创建入口在 https://taotoken.net/console?utm_source=taotoken_aicg_blog_end&utm_content=console&utm_campaign=rewrite ,Key 管理页在 https://taotoken.net/api-keys?utm_source=taotoken_aicg_blog_end&utm_content=api-keys&utm_campaign=rewrite 。Key 只显示一次,复制后先存到密码管理器。

3. 安装 Claude Code 并写入 settings.json 骨架

安装命令就一行:

npm install -g @anthropic-ai/claude-code

装完验证:

claude --version

看到类似2.x.x (Claude Code)就说明二进制已经进 PATH 了。如果提示command not found,回头检查~/.npm-global/bin是否在echo $PATH里。

接下来是核心:配置文件。Claude Code 读两个位置,~/.claude/settings.json管环境变量,~/.claude.json管 onboarding 状态。先建目录:

mkdir -p ~/.claude

然后写settings.json。下面这份骨架可以直接复制,只需要把sk-你的TaoTokenKey换成真实 Key:

{ "env": { "ANTHROPIC_AUTH_TOKEN": "sk-你的TaoTokenKey", "ANTHROPIC_BASE_URL": "https://taotoken.net/api", "API_TIMEOUT_MS": "3000000", "CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC": 1 }, "model": "glm-4.7" }

几个字段解释一下。ANTHROPIC_BASE_URL指向 TaoToken 的 API 入口,这样 Claude Code 发出的请求会走统一网关,再由网关路由到 GLM-4.7。API_TIMEOUT_MS设成 3000000 毫秒(50 分钟),是因为代码生成类请求偶尔会跑很久,默认超时太短会中途断掉。CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC设为 1,关掉非必要的遥测请求,减少干扰。model字段显式指定glm-4.7,避免它默认去调别的模型。

再写~/.claude.json,跳过首次启动的引导问答:

{ "hasCompletedOnboarding": true }

保存退出。如果你用 nano,Ctrl+O回车保存,Ctrl+X退出。

4. 终端验证:确认 Claude Code 真的在调 GLM-4.7

配置写完别急着信,先cat一遍确认没有拼写错误:

cat ~/.claude/settings.json

重点看ANTHROPIC_BASE_URL是不是https://taotoken.net/api,Key 有没有多余空格。

然后进一个测试目录启动:

mkdir -p ~/cc-test && cd ~/cc-test claude

首次启动会问是否信任当前文件夹,选信任。进去之后先跑/status,看它显示的模型和接入点。如果显示的是glm-4.7且 base URL 指向 TaoToken,说明配置生效。

接着做一次真实对话测试,直接输入:

你好,请用一句话说明你当前使用的模型名称

如果返回内容里提到 GLM 或 glm-4.7,链路就通了。再测一个代码生成:

帮我写一个 Python 函数,输入列表返回去重后的列表,保持原顺序

正常会返回带dict.fromkeys或set方案的代码块。这一步能过,说明从 Ubuntu 终端 → Claude Code → TaoToken 网关 → GLM-4.7 的整条链路没有问题。

如果你更想先在网页端确认模型可用性,可以打开模型对话页 https://taotoken.net/chat?utm_source=taotoken_aicg_blog_end&utm_content=model-chat&utm_campaign=rewrite 发一条同样的测试消息,对比终端返回是否一致。

5. 本篇常见报错排查

报错一:EACCES: permission denied出现在 npm install 阶段。说明你还在往系统目录写。回到第 2 节,确认npm config get prefix输出的是/home/你的用户名/.npm-global,而不是/usr。改完 prefix 后重新source ~/.bashrc,再装一次。

报错二:启动后提示Invalid API key或401。先cat ~/.claude/settings.json看 Key 有没有被截断。TaoToken 的 Key 通常以sk-开头,复制时容易漏掉尾部字符。另外确认ANTHROPIC_BASE_URL没有多写斜杠,正确值是https://taotoken.net/api,末尾不要加/v1之类。

报错三:改了 settings.json 但行为没变。Claude Code 在启动时读配置,运行中改文件不生效。完全退出(/exit或Ctrl+C),关掉当前终端窗口,重新开一个再claude。如果还不行,检查是不是同时存在~/.claude/settings.json和项目目录下的.claude/settings.json,后者会覆盖前者。

报错四:请求一直转圈最后超时。先确认网络能通到taotoken.net,用curl -I https://taotoken.net/api看返回码。如果网络没问题,把API_TIMEOUT_MS再调大,或者换一个更短的 prompt 测试,排除是单次请求内容过长导致。

报错五:claude: command not found但 npm 显示装好了。这是 PATH 没生效。执行echo $PATH | grep npm-global,如果没有输出,说明.bashrc那行没写进去或者没 source。手动补:

echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.bashrc source ~/.bashrc

6. 长期编码场景下的 Key 管理与接入文档

如果你只是偶尔用 Claude Code 跑几个 prompt,上面这套配置就够了。但如果你打算把它当成日常编码助手,甚至接进 Agent 工作流,那 Key 的轮换和模型切换会变成高频操作。TaoToken 的统一 Key 在这里的价值就体现出来了:换模型时不用改ANTHROPIC_AUTH_TOKEN,只需要在网关侧调整路由,或者改settings.json里的model字段。

长期编码场景建议看一下 Coding Plan 的说明 https://taotoken.net/coding-plan?utm_source=taotoken_aicg_blog_end&utm_content=coding-plan&utm_campaign=rewrite ,里面讲了怎么把 Claude Code 这类终端工具和统一 Key 配合使用。接入细节和字段含义在文档里 https://taotoken.net/doc?utm_source=taotoken_aicg_blog_end&utm_content=doc&utm_campaign=rewrite ,遇到settings.json字段不确定时优先查文档而不是猜。

最后留一个我自己的习惯:把~/.claude/settings.json里的 Key 用环境变量引用,而不是明文写死。Claude Code 支持读环境变量,你可以在~/.bashrc里export TAOTOKEN_KEY=sk-xxx,然后 settings.json 里写"ANTHROPIC_AUTH_TOKEN": "${TAOTOKEN_KEY}"。这样配置文件可以安全地同步到别的机器,Key 本身不进版本库。改完记得重新 source 并重启 Claude Code,验证方式还是老一套:/status看模型,发一句话看返回。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询