首页 / 资讯中心 / 文章详情

Claude code源码使用教程:把settings改到TaoToken接入Minimax和本地ollama模型

Claude code源码使用教程:把settings改到TaoToken接入Minimax和本地ollama模型 ★ FEATURED ARTICLE
1. 为什么要在 Claude Code 里同时挂 Minimax 和本地 ollamaClaude Code 源码修复版能在本地跑起来之后最让人头疼的不是界面而是模型端点写死。默认它只会去连 api.anthropic.com国内网络环境下大概率直接报Unable to connect to Anthropic services终端里那行Failed to connect to api.anthropic.com: ERR_BAD_REQUEST我见过太多次。解决办法不是去折腾网络而是把 settings 里的模型端点整体改到一个统一通道上让 Claude Code 以为自己在连 Anthropic实际请求被转发到 Minimax 或者本地 ollama。这篇教程聚焦的就是配置层怎么把settings.json和.env里的ANTHROPIC_BASE_URL、ANTHROPIC_AUTH_TOKEN、ANTHROPIC_MODEL这几个关键变量改到 TaoToken 统一通道同时保留 Minimax 云端模型和本地 ollama 双链路切换。适合已经拿到 cc-haha 这类修复版源码、能跑起 Ink TUI、但卡在模型接入这一步的人。读完你能拿到可直接复制的 settings 片段、环境变量清单以及切换后发起一次对话请求验证两条链路都通的具体动作。核心检索词先摆出来Claude Code 接入 Minimax、Claude Code 本地 ollama、settings 改模型端点。这三个词基本覆盖了大家搜索时的真实意图。下面按「原问题场景 → TaoToken 前置 → 可复制配置 → 验证请求 → 错排查 → CTA」的顺序走每一步都给命令和结果。2. TaoToken 统一通道前置准备与 Minimax/ollama 双模型接入TaoToken 在这里扮演的角色是一个 Anthropic 兼容的统一入口。Claude Code 只认ANTHROPIC_BASE_URL这一个地址你把它指向 TaoToken请求就会按你配置的模型 ID 路由到对应后端。官网在 https://taotoken.net/?utm_sourcetaotoken_aicg_blog_endutm_mediumcsdnutm_campaignrewriteutm_content API 根地址是 https://taotoken.net/api 注意 API 地址后面不加任何 UTM 参数配置里写干净的这个就行。前置准备分三块。第一块是拿到 TaoToken 的 API Key去控制台 https://taotoken.net/console?utm_sourcetaotoken_aicg_blog_endutm_contentconsoleutm_campaignrewrite 里创建然后在 API Keys 页面 https://taotoken.net/api-keys?utm_sourcetaotoken_aicg_blog_endutm_contentapi-keysutm_campaignrewrite 复制出来形如sk-开头的一串。这个 Key 会同时用于 Minimax 链路和 ollama 链路因为 TaoToken 侧做统一鉴权。第二块是确认 Minimax 的模型 ID。Minimax 提供 Anthropic 兼容接口常用模型是MiniMax-M2.7和更快的MiniMax-M2.7-highspeed。在 TaoToken 通道里你不需要单独填 Minimax 的官方地址只要把模型 ID 写对通道会帮你转发。如果你之前按老教程在.env里写过ANTHROPIC_BASE_URLhttps://api.minimaxi.com/anthropic现在要把它替换成 TaoToken 的地址否则就绕过了统一通道。第三块是本地 ollama。ollama 装好后默认监听http://localhost:11434它原生不是 Anthropic 协议所以不能直接把ANTHROPIC_BASE_URL指到 11434。正确做法是让 TaoToken 通道去对接 ollama或者用 ollama 的 OpenAI 兼容层再经通道转换。实操上更稳的是在 TaoToken 侧配置一个指向本地 ollama 的模型别名Claude Code 这边只认别名。ollama 的安装和使用可以参考社区里那篇ollama下载安装和使用的教程先把ollama run qwen2.5:7b这类命令跑通确认本地模型能出字再回来接 Claude Code。这里有个容易踩的坑很多人以为把ANTHROPIC_BASE_URL改成http://localhost:11434就能用 ollama结果 Claude Code 发的是 Anthropic 格式的/v1/messages请求ollama 不认直接 404。所以必须经过 TaoToken 这层协议转换。同理Minimax 虽然官方有 Anthropic 兼容端点但为了双模型统一切换也建议走 TaoToken这样切换时只改一个模型 ID不用动地址。环境变量清单先列出来后面配置片段会用到变量名作用Minimax 链路示例ollama 链路示例ANTHROPIC_BASE_URL统一通道地址https://taotoken.net/apihttps://taotoken.net/apiANTHROPIC_AUTH_TOKENTaoToken Keysk-你的keysk-你的keyANTHROPIC_MODEL主模型 IDMiniMax-M2.7ollama-qwen2.5ANTHROPIC_DEFAULT_SONNET_MODELSonnet 映射MiniMax-M2.7ollama-qwen2.5ANTHROPIC_DEFAULT_HAIKU_MODELHaiku 映射快MiniMax-M2.7-highspeedollama-qwen2.5ANTHROPIC_DEFAULT_OPUS_MODELOpus 映射MiniMax-M2.7ollama-qwen2.5API_TIMEOUT_MS超时30000003000000注意ANTHROPIC_DEFAULT_HAIKU_MODEL在 Minimax 链路里映射到 highspeed 版本这样 Claude Code 内部做轻量任务时会自动走快模型省时间。ollama 链路里本地模型通常只有一个三个映射写同一个 ID 即可。3. 可复制的 settings.json 与 .env 配置片段Claude Code 修复版的配置读取顺序一般是先看项目根目录的.env再看用户级settings.json。为了双链路切换方便我建议把公共部分BASE_URL、AUTH_TOKEN、TIMEOUT放在.env把模型 ID 相关的放在settings.json切换时只改 settings 里的模型字段。先看.env路径是项目根目录比如E:\coding\cc-haha\.env或~/cc-haha/.env# # TaoToken 统一通道Minimax 本地 ollama 共用 # API 根地址不加任何参数 # ANTHROPIC_BASE_URLhttps://taotoken.net/api ANTHROPIC_AUTH_TOKENsk-你的taotoken_key API_TIMEOUT_MS3000000 # 通用设置建议始终开启 DISABLE_TELEMETRY1 CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC1这里ANTHROPIC_AUTH_TOKEN填 TaoToken 控制台拿到的 Key。注意不要在这里写 Minimax 官方的 Key也不要写 ollama 的任何 token统一用 TaoToken 的。再看settings.json。Claude Code 的用户级配置通常在~/.claude/settings.json项目级在项目根目录.claude/settings.json。修复版可能读的是项目根目录的settings.json两个位置都放一份最稳。Minimax 链路的 settings 片段{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_AUTH_TOKEN: sk-你的taotoken_key, ANTHROPIC_MODEL: MiniMax-M2.7, ANTHROPIC_DEFAULT_SONNET_MODEL: MiniMax-M2.7, ANTHROPIC_DEFAULT_HAIKU_MODEL: MiniMax-M2.7-highspeed, ANTHROPIC_DEFAULT_OPUS_MODEL: MiniMax-M2.7, API_TIMEOUT_MS: 3000000 } }ollama 链路的 settings 片段只改模型 ID{ env: { ANTHROPIC_BASE_URL: https://taotoken.net/api, ANTHROPIC_AUTH_TOKEN: sk-你的taotoken_key, ANTHROPIC_MODEL: ollama-qwen2.5, ANTHROPIC_DEFAULT_SONNET_MODEL: ollama-qwen2.5, ANTHROPIC_DEFAULT_HAIKU_MODEL: ollama-qwen2.5, ANTHROPIC_DEFAULT_OPUS_MODEL: ollama-qwen2.5, API_TIMEOUT_MS: 3000000 } }ollama-qwen2.5这个 ID 是你在 TaoToken 侧给本地 ollama 起的模型别名具体名字以你通道里配置的为准。如果你用的是llama3.1:8b就写成对应的别名。切换时把整个env块替换掉或者用两个文件settings.minimax.json和settings.ollama.json启动时用--settings指定。如果你用的是 cc-haha 那种直接读.env的版本也可以把模型 ID 写进.env效果一样ANTHROPIC_MODELMiniMax-M2.7 ANTHROPIC_DEFAULT_SONNET_MODELMiniMax-M2.7 ANTHROPIC_DEFAULT_HAIKU_MODELMiniMax-M2.7-highspeed ANTHROPIC_DEFAULT_OPUS_MODELMiniMax-M2.7启动命令带上 env 文件bun --env-file.env ./src/entrypoints/cli.tsx或者用修复版自带的启动脚本./bin/claude-haha启动后 TUI 底部会显示当前模型Minimax 链路应该显示MiniMax-M2.7 · API Usage Billingollama 链路显示你配置的别名。如果显示的还是api.anthropic.com相关字样说明 settings 没被读到检查文件路径和 JSON 格式。4. 发起对话请求验证 Minimax 与 ollama 两条链路配置改完必须验证不然你以为通了实际请求还在往老地址发。验证分两步先 Minimax 后 ollama。Minimax 链路验证启动 Claude Code 后在 TUI 里输入一句简单的话比如「用一句话介绍这个项目的模块结构」。正常情况你会看到它开始Searched for 2 patterns, read 2 files之类的工具调用然后输出中文回答。如果底部模型显示MiniMax-M2.7且回答正常返回说明 Minimax 链路通了。这一步的关键是看有没有报401或Unable to connect没有就是成功。ollama 链路验证把 settings 换成 ollama 片段重启 Claude Code。同样输入一句话比如「你好请回复当前模型名称」。因为本地模型能力有限回答可能不如 Minimax 流畅但只要出字就说明链路通。如果卡住不动先确认 ollama 服务在跑ollama list ollama run qwen2.5:7b 你好本地能出字再回 Claude Code 里试。如果 Claude Code 里报local proxy failed或连接超时多半是 TaoToken 侧到 ollama 的转发没配好或者 ollama 没监听在通道能访问的地址上。更直接的验证方式是用 curl 打 TaoToken 的接口确认 Key 和模型 ID 都对curl https://taotoken.net/api/v1/messages \ -H x-api-key: sk-你的taotoken_key \ -H anthropic-version: 2023-06-01 \ -H content-type: application/json \ -d { model: MiniMax-M2.7, max_tokens: 64, messages: [{role: user, content: ping}] }返回里有content字段且不是报错说明 Minimax 链路在通道侧是通的。把model换成ollama-qwen2.5再打一次验证 ollama 链路。两条 curl 都返回正常内容Claude Code 里基本不会出问题。验证通过后你可以在 Claude Code 里跑一个真实任务比如「查看该项目给我总体模块介绍」看它能不能正常调用工具、读文件、输出结构化回答。这一步能同时验证模型链路和工具调用链路。5. 常见报错排查401、local proxy failed、reading choices、OAuth配置过程中最容易撞上的几个报错我按出现频率排一下每个都给排查方向。401 Unauthorized或invalid api key九成是ANTHROPIC_AUTH_TOKEN填错了。检查三点Key 是不是 TaoToken 控制台复制的、有没有多余空格、.env和settings.json里是不是都填了同一个 Key。如果两处都填了但值不一样以启动时实际读到的为准建议只留一处。另外注意ANTHROPIC_AUTH_TOKEN和ANTHROPIC_API_KEY是两个变量Claude Code 认前者填错变量名也会 401。local proxy failed或ECONNREFUSED 127.0.0.1:11434这是 ollama 链路专属。说明 Claude Code 或 TaoToken 通道尝试连本地 11434 但连不上。先ollama serve确认服务在跑再curl http://localhost:11434/api/tags看有没有返回模型列表。如果 ollama 跑在容器里或另一台机器上地址要改成对应 IP不能写 localhost。reading choices或Cannot read properties of undefined (reading choices)这个报错通常出现在用 OpenAI 格式响应去解析 Anthropic 请求时。原因是模型端点返回的不是 Anthropic 格式而 Claude Code 按 Anthropic 格式解析。排查方向是确认ANTHROPIC_BASE_URL指向的是 TaoToken 的 Anthropic 兼容入口而不是某个 OpenAI 格式的地址。如果你之前把地址写成http://localhost:4000LiteLLM 默认端口且没配 Anthropic 适配就会出这个错。OAuth相关报错比如OAuth token expired或failed to refresh tokenClaude Code 原生会尝试 OAuth 登录 Anthropic 账号走第三方通道时这个流程会失败。解决办法是在 settings 里禁用非必要流量确保CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC1和DISABLE_TELEMETRY1都开着。如果还报检查是不是有残留的~/.claude/credentials.json里的旧 token 在干扰可以备份后删掉再启动。Unable to connect to Anthropic services这个最直接就是ANTHROPIC_BASE_URL没生效请求还在往 api.anthropic.com 发。检查 settings 文件路径对不对、JSON 有没有语法错误比如多了逗号、启动命令有没有带--env-file。用bun --env-file.env ./src/entrypoints/cli.tsx启动时.env里的变量会覆盖 settings确认.env里没有残留的ANTHROPIC_BASE_URLhttps://api.anthropic.com。排查时有个通用技巧在启动命令前加env | grep ANTHROPIC看实际生效的环境变量或者在 Claude Code 里输入/status看当前配置。修复版一般有类似命令能看到当前 BASE_URL 和模型 ID。6. 长期编码与 Agent 场景的通道选择双链路配好之后日常怎么用有讲究。Minimax 链路适合需要强推理、长上下文、工具调用密集的任务比如让它读整个项目、改多个文件、跑测试。MiniMax-M2.7在代码理解和多步工具调用上表现稳定highspeed版本适合快速问答和轻量补全。ollama 链路适合离线场景、隐私敏感代码、或者单纯想省额度的时候本地模型虽然能力弱一些但胜在不出网、响应快、随便造。如果你打算长期用 Claude Code 做编码和 Agent 任务建议把 TaoToken 的 Coding Plan 用起来地址是 https://taotoken.net/coding-plan?utm_sourcetaotoken_aicg_blog_endutm_contentcoding-planutm_campaignrewrite 它针对编码场景做了额度和路由优化比按量计费更适合天天跑 Agent 的人。模型对话入口在 https://taotoken.net/chat?utm_sourcetaotoken_aicg_blog_endutm_contentmodel-chatutm_campaignrewrite 想先试试模型效果可以从这里进。接入文档在 https://taotoken.net/doc?utm_sourcetaotoken_aicg_blog_endutm_contentdocutm_campaignrewrite 里面有针对 Claude Code 的配置说明遇到本文没覆盖的报错可以去翻。最后留一个实操建议把 Minimax 和 ollama 两套 settings 存成两个文件用 shell 别名切换。比如在.bashrc或.zshrc里加alias cc-minimaxcp ~/.claude/settings.minimax.json ~/.claude/settings.json ./bin/claude-haha alias cc-ollamacp ~/.claude/settings.ollama.json ~/.claude/settings.json ./bin/claude-haha这样一条命令切链路不用每次手改 JSON。切换后第一次对话记得确认底部模型名变了再开始正式任务。
阅读完成 · 觉得有帮助?
咨询建站