
先说结论Claude Code 这东西2025 年你要是还在终端里裸敲命令那真的浪费了它一半的功力。配好 VSCode 再加一个顺手的管理工具日常写代码、改 bug、做重构的效率完全是两个维度。这篇我打算一次讲透两条主流接法——用CC Switch走云端模型DeepSeek、GLM、Kimi 这类只要 API Key 就能用的以及用Ollama把模型直接拉到本地跑。文章会覆盖从零安装 Claude Code、VSCode 里的配置、两条连接路线的完整实操顺带把最近群里被问爆的几个报错尤其是 HTTP 400 的reasoning_content问题拆开揉碎讲明白。不管你是刚入门的 AI 编程新手还是想摆脱官方模型限制、折腾本地推理的玩家这篇应该都能帮你少走不少弯路。1. 方案选型CC Switch 和 Ollama 到底怎么选1.1 Claude Code 为什么非要配 VSCode 用Claude Code 本质是一个跑在终端里的命令行工具。你可以在任意终端里敲claude启动对话它也能读写文件、执行命令、调用工具。但纯终端有个问题当你需要看代码 diff、改多文件、或者对照编辑器里的报错时来回切窗口非常割裂。VSCode 的集成刚好补上这块短板。官方扩展和第三方扩展能让你在编辑器侧边栏直接开一个 Claude Code 面板代码修改直接以 diff 形式展示在文件里点一下就能接受或拒绝。这种交互密度比纯终端舒服太多。另外一个隐性原因是终端上下文。VSCode 的终端会自动继承当前工作区的环境变量和 Git 信息Claude Code 在里面启动时能更准确感知项目状态这在多项目场景下非常有用。1.2 两条连接路线的核心区别CC Switch 和 Ollama 虽然最终目的都是让 Claude Code 能跑起来但底层逻辑完全不同对比维度CC SwitchOllama模型运行位置云端 API第三方模型服务商本地 GPU/CPU 推理网络依赖需要网络请求 API 服务本地运行断网可用成本按 token 计费充值后用多少扣多少一次性硬件投入电费忽略不计模型可选范围DeepSeek、GLM、Kimi、通义等大量闭源/开源模型本地可跑的量化开源模型隐私性代码会发送到第三方 API 服务端全部留在本地适合敏感项目硬件需求无普通电脑即可最好有 16G 以上显存否则小模型效果受限上手难度较低图形界面配置中等需要处理模型下载和参数调优我个人的倾向是日常写业务代码、需要模型能力强的场景用 CC Switch 接云端模型涉及公司内部代码、保密项目或者你手上正好有块不错的显卡那 Ollama 本地部署是更稳妥的选择。两条路不冲突完全可以都搭好随时切换。2. 环境准备从零装好 Claude Code 和 VSCode2.1 VSCode 安装与基础设置如果你还没装 VSCode直接去官网下载对应系统的安装包。Windows 用户注意安装时勾选“添加到 PATH”这样后面终端里才能直接调用code命令。装完之后我建议先做两件事第一装中文语言包。打开扩展面板搜索Chinese Language Pack安装后右下角会提示重启重启就是中文界面了。虽然英文界面用久了也没障碍但中文界面对于排查配置类报错确实更直观。第二打开设置把自动保存开起来File - Auto Save。Claude Code 在改文件时有时候会直接写盘如果你没开自动保存编辑器里的旧内容和实际文件内容可能不一致容易造成 Claude 读到过期的代码。2.2 安装 Node.js 和 Claude CodeClaude Code 官方推荐通过 npm 安装所以 Node.js 是前置依赖。版本要求是 Node.js 18.0 或更高装太老的版本会直接报错。你可以用node -v检查当前版本。装好 Node.js 后打开终端执行npm install -g anthropic-ai/claude-code如果网络不好可以把 npm 源切到国内镜像npm config set registry https://registry.npmmirror.com然后再重试安装。装完验证一下claude --version能输出版本号就说明装好了。还有一种方式是从官网下载原生安装包但我实测下来 npm 安装最省事升级也方便。注意Windows 用户如果在 PowerShell 里执行上面的命令偶尔会遇到 npm 脚本执行策略限制的报错。出现这种情况时以管理员身份运行 PowerShell执行Set-ExecutionPolicy RemoteSigned再重试即可。2.3 启动前的登录与基础验证第一次在终端敲claude会提示你用 Claude 账号登录。这时候如果你的网络环境能直连官方服务直接扫码或授权登录就能用。但很多人的场景是——官方服务要么访问不稳定要么没有可用的订阅。所以更常见的做法是跳过官方登录直接通过环境变量指向自建的网关或第三方接口。这就进入我们后面的主题了走 CC Switch就是在本地起一个 API 转发中间层把 Claude Code 的请求转发到你配置的第三方模型服务。走 Ollama就是把请求转发到本机的 Ollama 服务端。不管走哪条路核心都是让 Claude Code 不要连官方地址而是连你指定的本地地址。3. CC Switch 连接方案给 Claude Code 换云端模型3.1 CC Switch 是什么以及怎么装CC Switch 是个开源的管理工具它能让你在一个界面里管理多套模型 API 配置然后自动给 Claude Code以及其他命令行 AI 工具提供一个统一的本地转发服务。这样你就不用手动去改环境变量去切换供应商了点一下配置就换一套。安装方式很简单去 GitHub 的 Release 页面下载对应系统的版本。Windows 选.exe安装包macOS 选.dmg或.app压缩包Linux 选 AppImage。装完打开软件界面一般会有一个默认的配置示例。你通常需要做三件事添加一个供应商配置填入你申请的 API Key选好模型名称比如 DeepSeek、GLM 这类模型记下软件界面显示的本地服务端口通常是3456或4078之类以版本实际显示为准CC Switch 的工作方式可以这样理解它在本地开了一个小服务Claude Code 发出的所有请求本来要发往 Anthropic 官方服务器CC Switch 拦下来后把你指定的 API Key 和模型参数替换进去再转发给真实的供应商。对 Claude Code 来说它感知不到后端已经换成了第三方模型。3.2 配置第三方模型供应商以 DeepSeek 为例这是很多人的首选模型便宜又够用。先去 DeepSeek 开放平台注册账号创建 API Key充值几块钱就够试用很久了。回到 CC Switch添加供应商时填这几个关键信息配置项填写内容供应商名称随便写比如 DeepSeekBase URL填供应商的 API 地址API Key粘贴你的密钥模型名称例如deepseek-chat或deepseek-reasoner是否启用 Thinking根据模型和场景选后面会专门讲填完之后保存并启用这条配置。这时候 CC Switch 界面应该会显示一个可用的本地服务地址和 token。记住它。在终端里测试一下能不能通curl http://localhost:端口号/v1/models -H Authorization: Bearer 你配置的token能返回模型列表说明本地转发服务正常接下来就去接 Claude Code。3.3 打通 VSCode让 Claude Code 走 CC Switch其实 Claude Code 不管是 VSCode 里还是终端里跑读取环境变量的方式是一致的。建议在系统环境变量里配置这样 VSCode 启动时也能自动继承。需要设置两个环境变量ANTHROPIC_BASE_URLhttp://127.0.0.1:端口号 ANTHROPIC_AUTH_TOKEN你配置的token在 Windows 上可以在“系统属性 - 环境变量”里新建这两个变量。在 macOS/Linux 上可以写到~/.zshrc或~/.bashrcexport ANTHROPIC_BASE_URLhttp://127.0.0.1:端口号 export ANTHROPIC_AUTH_TOKEN你配置的token配置好之后重启 VSCode打开终端进入你的项目目录执行claude如果一切正常Claude Code 不会让你登录 Anthropic 账号而是直接以你配置的第三方模型身份进入对话界面。你可以问个简单问题验证一下让它写一个递归遍历目录的 Node.js 脚本看看响应是否流畅。注意很多人在这一步踩坑环境变量配好了但 Claude Code 还是要求官方登录。绝大多数情况是环境变量没被正确继承或者是修改环境变量之后终端/编辑器没有重启。环境变量这东西改完一定要完全退出终端再重新打开光开一个新 tab 有时候都不行。3.4 用 CC Switch 时必看的四类状态码那几个高频报错我已经帮你们把所有能踩的坑都踩了一遍先放一个速查表状态码报错场景常见原因401 Unauthorized请求被拒提示鉴权失败API Key 填错、token 没配对、供应商鉴权信息不匹配404 Not Found请求的地址或模型不存在模型名称写错、未开通对应模型、Base URL 路径不对400 Bad Request请求格式不对供应商拒收参数格式不对、reasoning_content问题下面细说、上下文超限429 Too Many Requests请求太频繁账户余额不足、并发超限、供应商限流401和404相对好解决基本都是配置层面的问题。400和429就要结合供应商的返回信息逐条排查了。4. Ollama 连接方案把模型拉到本地跑4.1 Ollama 安装与国内下载加速Ollama 是目前最流行的本地大模型运行工具它的价值在于把模型推理封装成了一个简单的ollama run命令底层用的是 llama.cpp 的技术栈能自动做显存管理、量化加载、CPU/GPU 调度你不需要关心任何底层细节。安装 Ollama 的方式有两种官网下载安装包或者命令行一键安装。但在国内官网下载经常慢到怀疑人生。如果你遇到下载太慢的情况可以换用国内镜像站下载安装包安装包是同一个只是下载源不同。装好之后命令行里验证一下ollama --version看到版本号就说明装好了。接着把服务跑起来ollama serve如果你的系统在安装时已经默认把 Ollama 注册成后台服务了这一步可以跳过直接测一下 API 通不通curl http://127.0.0.1:11434/api/version能返回版本号说明服务已经在运行了。4.2 拉模型选对型号别一味求大Ollama 支持的模型很多但真正适合编程辅助的无非就那几个。以我用下来的经验推荐这几款模型参数量量化等级显存需求编程表现qwen2.5-coder:7b7BQ4_K_M约 6GB中等偏上能应付常见代码生成qwen2.5-coder:14b14BQ4_K_M约 10GB较好已经能处理多数重构任务deepseek-r1:7b7BQ4_K_M约 6GB中等偏好推理类任务deepseek-r1:32b32BQ4_K_M约 20GB很强但显存门槛高拉取模型命令很简单ollama pull qwen2.5-coder:14b这里要提醒一句如果你只有核显或者没有独立显卡也能跑 7B 模型但速度会让你怀疑人生。本地推理的底线建议是有一张 8GB 显存以上的显卡否则体验会差很多。4.3 配置 Claude Code 连接 Ollama要让 Claude Code 接入 Ollama需要用到 Ollama 的 Anthropic 兼容接口。新版 Ollama 服务默认兼容 Anthropic API 格式地址是http://127.0.0.1:11434/anthropic所以同样设置两个环境变量ANTHROPIC_BASE_URLhttp://127.0.0.1:11434/anthropic ANTHROPIC_AUTH_TOKENollama这里 token 随便填一个非空字符串就行Ollama 本身不校验它。模型名则通过ANTHROPIC_MODEL环境变量指定ANTHROPIC_MODELqwen2.5-coder:14b设置好之后重启终端进入项目目录执行claude它就会走本地 Ollama。你可以让它写个函数试试观察响应速度。如果显存不够Claude Code 会报一些奇怪的超时错误这时候要么换更小的模型要么在 Ollama 里换更低的量化等级。4.4 本地部署的显存优化与参数调优本地跑模型显存决定你最多能跑多大的模型。我实测下来的经验是模型加载后占用的显存大约是“参数量 × 量化位数”。比如 14B 模型 Q4 量化后大约需要 14 × 0.5 7GB 左右再加上上下文窗口的开销10GB 显存是起步。如果显存不够可以在Modelfile里调整num_ctx参数缩小上下文窗口来省显存FROM qwen2.5-coder:14b PARAMETER num_ctx 4096然后ollama create my-coder -f Modelfile后续就通过my-coder这个自定义模型名来跑。另一个实用技巧是如果你的机器同时有核显和独显可以在环境变量里强制指定 GPU 设备层数避免模型一大部分掉到 CPU 上导致速度骤降。具体参数视显卡而定但一般默认情况下 Ollama 已经做了合理调度不用过度干预。5. 实战问题排查与避坑记录5.1 那个反复出现的 reasoning_content 报错这个报错真的是最近问得最多的报错内容长这样cc switch local proxy failed while handling codex endpoint /responses. provider: deepseek; model: deepseek-v4-flash; upstream_status: http 400; cause: the reasoning_content in the thinking mode must be passed back to the api.我拆开讲。DeepSeek 有些模型分“思考模式”和“非思考模式”。思考模式下模型在返回正式回答之前会先返回一段推理过程。这段推理过程在 API 响应里以reasoning_content字段单独返回。问题在于很多第三方转发工具比如 CC Switch 或旧版本的一些本地服务在把请求转发给 Claude Code 时生成的上下文里没有把这个reasoning_content字段正确回传给下一次请求。供应商DeepSeek在校验时会发现“你思考模式下返回的推理内容没有完整回传给我”于是直接抛 HTTP 400 拒绝。解决办法按优先级排列在 CC Switch 或供应商配置里关闭“思考模式/Thinking Mode”。如果你的场景用不上深度推理这是最省事的方案。升级 CC Switch 到最新版。这个报错在新版本里已经修了新版本在处理 DeepSeek 响应时会自动剥离并缓存reasoning_content不再回传给接口。手动换一个不带 thinking 的模型变体。比如deepseek-chat而不是deepseek-reasoner或者在模型名后面加非思考版本的标识。这个报错的本质提醒我们当你用第三方工具把一种协议转换成另一种协议时协议里那些“非标准字段”就是最容易出问题的点。理解了这一点遇到同类问题排查就有方向了。5.2 401、404 报错的定位思路401 Unauthorized在 CC Switch 方案里九成是 token 方面的问题。你设置ANTHROPIC_AUTH_TOKEN时必须和 CC Switch 界面显示的 token 完全一致。复制粘贴时小心别带上换行符和空格。另一种可能性是供应商的 API Key 本身失效了。有些服务商会在你充值异常或账户风控时直接吊销密钥页面看没问题实际调接口就是 401。这种时候去服务商后台重新生成一个 Key 再试。404 Not Found则主要是路径或模型名不对。CC Switch 对某些供应商要求模型名带完整前缀比如deepseek/deepseek-v4-flash你在配置里只填了deepseek-v4-flash转发时上游就找不到这个模型。这需要你仔细看 CC Switch 的模型下拉列表里实际写入的模型全名而不是凭印象填。5.3 环境变量不生效的常见现场环境变量不生效是我见过最多的配置类问题。典型场景是用户在系统设置里改了ANTHROPIC_BASE_URL但 VSCode 里跑 Claude Code 还是提示官方登录。这里有一个特别容易忽略的点VSCode 的图形界面启动时确实会读取系统环境变量但如果你在改环境变量之前就已经启动了 VSCode那么 VSCode 里所有终端、所有扩展都不会读到新值。必须完全退出 VSCode 再重新打开不是关闭窗口是用任务管理器确认进程清掉再启动。另一个场景是终端是改环境变量之前开的。比如你先开了终端 A然后改了环境变量接着在终端 A 里启动 VSCodeVSCode 继承的就是改之前的旧值。正确做法是改完环境变量先开一个新的终端窗口再从这个新终端启动 VSCode。5.4 Ollama 相关的几个坑Ollama 方案有一些特有的问题和你用的模型无关纯粹是服务和资源层面的现象原因解法首次对话特别慢模型还没加载到显存需要冷启动先手动ollama run 模型名预热一次响应中途中断上下文长度超过模型上限或显存溢出减小num_ctx或换更小量化模型调用 API 提示 404Ollama 版本太老不支持 anthropic 兼容路径升级 Ollama 到最新版模型越聊越慢没有释放历史上下文二次处理开销变大重启对话用/clear清空会话唯一要说明的是Ollama 本地模型的代码能力天花板目前确实不如顶尖云端模型。你问我值不值得折腾我觉得看需求追求稳定、隐私优先的场景本地模型配合 Claude Code 的 agent 能力已经能完成很大一部分自动化工作但如果你需要的是那种“看一眼需求就能给出近乎可用的大型项目结构”的体验那还是 CC Switch 接云端大模型更实际。5.5 几条我自己的实操经验最后分享几条不写进文档里的经验。第一CC Switch 和 Ollama 可以同时装。环境变量可以随时切想用谁就指向谁的地址。你可以写一个简单的切换脚本放在~/.zshrc或 Windows 的 PowerShell profile 里一键切换云端和本地。这对于那些既想要云端能力的上限、又需要本地兜底的场景特别实用。第二把 ANTHROPIC_AUTH_TOKEN 设置成一个极复杂的随机字符串。有些人图省事填 123456结果本机如果有其他服务被扫到端口容易被盗刷。虽然 CC Switch 暴露在 localhost 风险不大但好习惯就是要从一开始养成。第三定期更新 CC Switch 和 Ollama。这两个工具迭代速度非常快很多你觉得莫名其妙、怎么都解决不了的 bug下一个版本就默默修掉了。我的习惯是每两周去看看 GitHub Releases 页面有新版本就顺手升级。第四遇到问题先看日志而不是猜。CC Switch 界面一般有日志面板Ollama 也可以用journalctl -u ollama或者前台运行ollama serve看输出。日志里明确写了错误原因比你在网上搜报错拼凑答案靠谱得多。我个人折腾下来的最大感受是Claude Code 这套工具链的好坏一半取决于模型本身一半取决于你把它接在什么环境里。装好只是热身真正花心思把这些连接细节捋顺了它才能从一个“新玩具”变成每天离不开的生产力。希望这篇能帮你把路铺平少踩几个我踩过的坑。