ARTICLE DETAIL

资讯详情

深耕网站建设与运营推广的一线实战洞察。

Claude Code与Codex安装配置及接入DeepSeek实战指南

Claude Code与Codex安装配置及接入DeepSeek实战指南 最近好几个读者都在问同一组问题Claude Code 到底怎么装Codex 又怎么配能不能把 DeepSeek 接到里头用命令行 AI 编程工具这两年已经不只是“玩具”了Claude Code 和 Codex 分别是 Anthropic 和 OpenAI 官方推出的终端编程助手它们能直接读仓库、改多文件、跑命令甚至帮你跑完一遍测试再提交代码。大家想装、想配、想接第三方模型本质诉求其实就三个官方能力要能用成本更低的模型也要能接报错了还得有人告诉我怎么修。这篇文章我就把手里的配置过程完整整理一遍从零开始讲人话。你会看到如何装 Node.js、Git如何安装并登录 Claude Code 和 Codex以及最常见的“接入第三方模型”玩法——以 DeepSeek 为例子。文末还有我汇总的报错排查表包括很多人遇到的 cc-switch 本地代理失败、rate limit exceeded 这类问题。适合正在折腾这两个工具、想省点 API 费用的开发者也适合刚入门想搞懂原理的新手。1. 先搞清楚这两个工具是什么以及为什么值得折腾1.1 一句话定位Claude Code 和 Codex 都是跑在终端里的 AI 编程代理agent不是普通聊天窗口而是“能动手干活”的那种。你给它一个任务比如“把登录模块的重构方案实现一下再补上单测”它会自己列出改动计划、读取相关文件、逐文件修改然后执行命令验证。它们和 IDE 插件最大的区别是IDE 插件更像智能补全而这类终端代理是真正在替你操作项目。Claude Code 用的模型是 Anthropic 的 Claude 系列Opus、Sonnet优势是长上下文理解好、代码改动质量高、多轮对话不容易丢上下文。Codex 则来自 OpenAI内置了 GPT-5 系列和专门的 Codex 系列模型在结构化任务执行、沙箱隔离上做得非常规范OpenAI 给它配了独立的执行沙箱命令不会直接裸奔在你的系统上。1.2 适合什么人、解决什么问题我实际用下来这两类工具的典型使用人群有三类。第一类是独立开发者。一个人要维护一个仓库又写后端又写前端没有时间逐行看代码让 Claude Code 去“读一遍仓库再补功能”能省大量时间。第二类是团队里的技术负责人经常要做代码审查、批量重构、迁移老代码这类任务正好是 Codex 的强项你给它一个范围它能把涉及的所有文件列出来逐个改完。第三类是“多模型成本党”也就是想接入 DeepSeek 这类第三方模型的用户——官方模型效果确实好但重度使用时成本不低日常小任务让更便宜的模型干复杂任务再让官方模型上这是很划算的组合。1.3 两个工具的选型对比我整理了一张对比表方便你按自己情况选维度Claude CodeCodex官方模型Claude Opus / SonnetGPT-5 / Codex 系列登录方式Claude 账号订阅或 API KeyChatGPT 账号登录或 OpenAI API Key配置文件环境变量 /config 命令~/.codex/config.toml沙箱机制有权限提示逐条确认命令默认沙箱可配置 workspace-write 等模式第三方模型接入需要 Anthropic 协议兼容网关原生支持 OpenAI 兼容端点接入很直接典型优势长上下文、多文件重构、代码理解执行规范、沙箱稳、多命令编排适合场景复杂业务重构、老项目维护批量任务、自动化脚本、代码审查说实话这两个工具不是二选一的关系。我自己的习惯是需要大范围改代码、理逻辑时用 Claude Code要跑批量任务、做代码审查、执行流程化操作时用 Codex。你完全可以两个都装这也是为什么很多配置切换工具比如 cc-switch会出现的原因——大家都想在两个工具、多个模型之间来回切。2. 环境准备装好 Node.js 和 Git后面会省很多事很多人一上来就装 Claude Code结果报错一堆回头发现是 Node 版本不对或者 Git 没配好。这两个工具虽然是以 npm 包分发的但它们启动后要读写仓库、执行 git 命令所以 Node.js 和 Git 是硬前提。先把地基打好。2.1 Node.js 版本选择和安装Claude Code 和 Codex 都要求 Node.js 18 或更高版本。Node.js 的安装方式取决于你的操作系统。Windows 用户建议走官网下载 LTS 版本安装包或者如果你喜欢命令行用 winget 一条命令搞定winget install OpenJS.NodeJS.LTSmacOS 用户如果装了 Homebrew直接brew install nodeLinux 用户以 Ubuntu/Debian 为例可以用 apt但要注意 apt 源里的 Node 版本可能偏老装完先验证一下版本太低就改用官方二进制包。装完后打开终端验证node -v npm -v我见过太多人卡在这一步。如果你执行 node -v 提示找不到命令就是环境变量没配上如果你发现版本是 v16 甚至更低别硬撑Claude Code 和 Codex 很多新功能会直接不可用。升级 Node 最省心的方式是用官方安装包覆盖安装Node 自带 npm 升级工具npm install -g npmlatest国内网络环境下npm 默认源下载速度不稳定是常态但这不是什么玄学问题换成 npm 官方在国内的镜像源就行npm config set registry https://registry.npmmirror.com提示镜像源只影响 npm 下载包的速度不影响你后续调用任何 API。改了之后如果发现某个包发布有延迟可以随时改回官方源。2.2 Git 安装和基础配置Git 是另一个躲不开的依赖。Claude Code 在分析代码改动时会调用 git diffCodex 在提交代码、创建分支时也会直接用 git。所以不装 Git 的话两个工具都会“半身不遂”。Windows 用户到官网下载 Git for Windows一路默认安装即可。macOS 用户执行xcode-select --install这会装好包括 Git 在内的命令行工具。Linux 用户sudo apt install git -y装完先验证再配置身份信息。Git 要求至少配置 user.name 和 user.email否则很多 AI 代理在替你执行 commit 时会直接报错git --version git config --global user.name 你的名字 git config --global user.email 你的邮箱有人会问为什么 AI 工具需要 Git因为这类代理在改代码前会先看 git 状态改完之后还要能对比差异、创建提交。如果仓库不是 git 仓库或者 git 用户信息没配好代理执行到一半就崩了排查起来还特别麻烦。2.3 验证环境的三个命令环境装没装好不要凭感觉直接在终端跑这三个命令node -v npm -v git --version三条命令都能正常输出版本号说明基础环境达标。如果你是在 Windows 上用了 Git Bash 或 WSL注意工具链的选择——我个人建议直接装在 WSL 里跑 Claude Code 和 Codex文件系统访问和权限处理都比 Windows 原生 CMD 要省心。3. Claude Code 官方安装与配置3.1 用 npm 全局安装环境没问题后安装 Claude Code 其实就一条命令npm install -g anthropic-ai/claude-code装完后验证claude --version如果能看到版本号说明安装成功。后续升级也很简单npm update -g anthropic-ai/claude-code这里要特别说明一下“桌面版”的问题。热词里经常出现“claude code desktop 国内下载”Claude Code 有桌面版程序确实可以从官网或 GitHub Releases 页面获取。但如果你所在网络环境访问这些站点不稳定npm 版其实是更稳的选择——两者核心功能完全一致桌面版只是多了一个图形窗口外壳真正干活还是同一个 CLI 引擎。我用下来的感受是桌面版对日常窗口管理更方便但 npm 版对远程服务器、SSH 环境更友好。3.2 登录认证订阅账号和 API Key 两种方式安装完成后在项目根目录运行claude首次启动会引导你登录。两种认证方式供你选择方式一用 Claude 订阅账号登录。终端里会弹出一个登录链接你浏览器打开后授权终端就会拿到凭证。这种方式需要你的账号是 Claude Pro 或 Max 订阅并且账号所在区域要在官方支持列表内。方式二用 API Key。这种方式适合有 Anthropic API 账号的开发者设置环境变量即可export ANTHROPIC_API_KEYsk-ant-你的key然后启动 claude工具会自动读取环境变量完成认证。注意如果终端提示 “Claude Code might not be available in your country. Check supported countries list”优先检查你的账号区域是否在官方支持列表内如果你是 API Key 方式确认对应平台账号状态正常。具体支持范围以官方文档为准。3.3 登录后的常用配置登录成功后进入 claude 的交互界面。输入/config可以打开配置菜单里面可以切换主题、设置权限模式、查看当前模型等。几个我常用的配置项# 设置系统提示词让 Claude Code 按团队规范输出 # 在 claude 交互界面中 /contextCLI 模式常用参数也值得记一下。比如--dangerously-skip-permissions可以让 Claude Code 不再逐条询问命令权限自动化程度更高但这相当于把钥匙直接交给 AI我强烈建议只在临时容器或明确安全的项目里用。日常使用我更喜欢保留确认机制每次执行命令前扫一眼能避免很多“AI 自作主张”的意外。3.4 在 VS Code 里用 Claude Code如果你不想离开编辑器VS Code 插件市场直接搜索 “Claude Code” 安装即可。装好后左侧边栏会出现 Claude Code 面板你可以在里面直接对话、看文件改动、接受或拒绝建议。这个插件的本质还是调用你本机安装的 claude 命令所以前提是前面npm install -g那一步已经成功。4. Codex 官方安装与配置4.1 安装npm 或 HomebrewCodex 的安装同样非常简单。npm 方式npm install -g openai/codexmacOS 用户也可以用 Homebrewbrew install codex安装完验证codex --version热词里出现的“codex 安装 windows 桌面版”指的是 OpenAI 推出的 Codex 桌面应用可以从 GitHub Releases 页下载。不过和 Claude Code 桌面版类似用 npm 安装的 CLI 版是功能最完整、更新最及时的桌面版更适合那些不想碰终端的用户。4.2 登录认证首次启动codex如果之前登录过 ChatGPTCodex 会引导你完成浏览器授权走 ChatGPT 账号体系。如果你更想用 API Key 方式先设置环境变量export OPENAI_API_KEYsk-你的key之后启动 Codex 时会自动读到。这里要注意ChatGPT 订阅账号和使用 API Key 是两套独立的计费体系登录方式不同消耗的额度也不同。你平时用 ChatGPT Plus 订阅并不代表 API 账户里有钱两者是分开的。4.3 config.toml 配置文件详解Codex 的配置文件在~/.codex/config.toml。这个文件是 Codex 的灵魂很多自定义行为都靠它。第一次运行后会自动生成。核心配置项model gpt-5 model_provider openai [model_providers.openai] name OpenAI base_url https://api.openai.com/v1 env_key OPENAI_API_KEYmodel默认使用的模型名。model_provider指定用哪套供应商配置。[model_providers.xxx]定义供应商base_url是 API 地址env_key告诉 Codex 从哪个环境变量读取密钥。还有一个重要参数是沙箱模式。Codex 默认会小心限制命令执行范围如果你希望它能在工作目录里自由读写文件可以配置sandbox_mode workspace-write如果你胆子大一点可以设置sandbox_mode dangerously-full-access但我真心不建议除非你跑在一次性容器里。沙箱是 Codex 对比 Claude Code 的一个明显优势别一上来就关掉。4.4 命令行用法和 VS Code 集成Codex 有两种主要用法。交互模式直接运行codex进入对话界面像聊天一样下任务。非交互模式适合脚本化调用codex exec 给这个仓库的所有函数补充中文注释并生成注释风格说明VS Code 插件同样可以在扩展市场搜索 “Codex” 安装装好后会在侧边栏提供对话面板并且能看到 Codex 正在执行的操作步骤。5. 接入第三方模型以 DeepSeek 为例5.1 为什么能接第三方模型先说原理。Claude Code 和 Codex 本身是“壳”它们负责读仓库、规划任务、执行命令真正“思考”的是背后的模型。官方模型是默认选项但只要目标服务支持对应的接口协议这两个壳就能换成别的模型。这里有两个关键概念OpenAI 兼容协议和 Anthropic 协议。Codex 原生走的是 OpenAI 格式的接口/chat/completions和/responses而 DeepSeek、通义千问、智谱、Kimi 等国内模型服务几乎都提供了 OpenAI 兼容接口。所以 Codex 接 DeepSeek 属于“直连”非常方便。Claude Code 原生走的是 Anthropic 格式接口/v1/messages而 DeepSeek 不直接提供 Anthropic 格式接口。想让 Claude Code 用上 DeepSeek需要中间加一层网关做格式转换也就是把 Claude Code 发出的 Anthropic 格式请求转换成 OpenAI 格式发给 DeepSeek再转回来。这一步技术上是完全可行的但比 Codex 接 DeepSeek 要绕。5.2 Codex 接入 DeepSeek 的完整配置这个方案我实测过很多次是最靠谱的。第一步去 DeepSeek 开放平台注册账号创建一个 API Key。第二步编辑~/.codex/config.toml在原有内容后面追加model deepseek-chat model_provider deepseek [model_providers.deepseek] name DeepSeek base_url https://api.deepseek.com/v1 env_key DEEPSEEK_API_KEY第三步设置环境变量export DEEPSEEK_API_KEYsk-你的deepseek密钥第四步启动 codex 验证codex进入对话界面后随便问一句“读取当前目录结构说明这个项目是干嘛的”如果 Codex 能正常分析并回答说明已经切换到 DeepSeek 了。在对话中想临时切模型也可以用/model命令。提示DeepSeek 有两个常用模型名——deepseek-chat和deepseek-reasoner。前者响应快、适合日常编码后者带思维链推理适合复杂问题但响应更慢。日常写代码我默认用deepseek-chat。5.3 Claude Code 接入 DeepSeek 的网关方案Claude Code 接 DeepSeek 没有 Codex 那么直接需要自建网关。常见的开源方案是 New API 或 One API 这一类自托管的 API 网关它们支持配置多个模型渠道并对外提供 Anthropic 兼容端点。整体流程是这样的部署一个 New API / One API 服务可以用 Docker 一键启动。在网关后台添加 DeepSeek 渠道填入你的 DeepSeek API Key。在网关的“设置”中开启 Anthropic 兼容模式拿到一个对应的端点地址和网关 Token。设置环境变量后启动 Claude Codeexport ANTHROPIC_BASE_URLhttp://localhost:3000 export ANTHROPIC_AUTH_TOKENsk-你的网关token export ANTHROPIC_MODELdeepseek-chat claude这里ANTHROPIC_BASE_URL指向网关ANTHROPIC_AUTH_TOKEN是网关生成的密钥ANTHROPIC_MODEL指定要用的模型。需要坦诚地说这个方案虽然能跑通但效果不如 Codex 接 DeepSeek 那样“原生”。主要原因在于 Anthropic 协议里有自己特有的 tool calling 格式、system prompt 模板和上下文管理机制网关做转换时会损失一部分细节。Claude Code 的一些高级功能比如大量并行工具调用在转换模式下可能变慢或不稳定。我的建议是日常小任务、快速问答、简单改代码用这个方案没问题但需要 Claude Code 充分发挥长上下文重构能力时还是切回官方 Claude 模型。5.4 接入其他第三方模型的通用模板DeepSeek 只是起点。所有提供 OpenAI 兼容接口的模型服务商都可以按 Codex 那套模板接入。通用配置如下model 你的模型名 model_provider 任意标识 [model_providers.任意标识] name 服务商名称 base_url https://你的服务商地址/v1 env_key 对应的环境变量名然后设置对应的环境变量启动 codex 即可。在 Claude Code 那边核心就是配好ANTHROPIC_BASE_URL指向你的兼容网关。6. 常见报错与排查实录6.1 cc-switch local proxy failed 报错分析这个报错是热词里出现频率极高的一个完整信息大概是cc-switch local proxy failed while handling codex endpoint /responses. provided provider xxx not found, and no default provider configured.先说清楚 cc-switch 是什么。它是一个开源的配置切换工具用来在 Claude Code 和 Codex 之间快速切换模型供应商。它会在本地起一个代理把 Codex 或 Claude Code 的请求转发到目标模型服务商。这个工具本身不复杂但一旦配置没配对就会出现上面这种报错。根据我的实际排查经验这个报错十有八九是下面几个原因之一第一个原因provider 名字写错了。报错里会告诉你provided provider xxx not found意思是你选了一个切换项但配置文件中没有这个名字。解决办法是打开 cc-switch 的配置文件确认你选择的 provider 标识和配置文件里的[model_providers.xxx]完全一致。第二个原因本地代理没起来。cc-switch 的工作原理决定了它需要在本地某个端口监听请求如果代理进程没启动或者端口被占用Codex 请求打到本地就会失败。排查方法是看看 cc-switch 的日志或者重启 cc-switch 后重新切换一次。第三个原因API Key 没配。cc-switch 只是切换配置它不会帮你填密钥。如果对应 provider 的env_key指向的环境变量是空的请求就会在本地代理这一层直接失败。排查顺序我建议这样来重启 cc-switch重新选择目标 provider。打开 cc-switch 的日志目录看有没有更详细的错误。确认~/.codex/config.toml里的 provider 定义完整、模型名正确。确认对应 API Key 环境变量已设置并且余额充足。6.2 rate limit exceeded 限流问题报错里如果出现rate limit exceeded那不是配置问题而是模型服务商的限流机制在起作用。常见触发场景是在 cc-switch 切换供应商后短时间内大量请求打过去触发了每秒请求数或每分钟令牌数的限制。处理方法有几个优先级先停掉手头的批量任务等待一两分钟再重试然后检查当前模型服务的账户余额余额不足也可能导致限流阈值降低最后可以考虑换一个模型名比如从deepseek-reasoner切到deepseek-chat不同模型的限流策略和套餐额度是独立的。6.3 高频问题速查表我把 QA 社区、群里常见的问题整理成一张速查表方便你遇到问题直接查报错或场景大概率原因处理方式claude: command not foundNode 没装或全局 bin 不在 PATH重装 Node确认npm root -g已加入 PATHcodex: command not found同上同上401 unauthorized登录过期或 API Key 无效重新登录检查环境变量404 model not found模型名写错或服务商没有该模型检查 config.toml 里的模型名对照服务商文档429 rate limit exceeded触发限流等待、降频、检查余额network timeout网络连接不稳定或目标端点不可达先curl测试端点连通性再检查 base_url 是否写对Claude Code 提示 country 不支持账号或登录区域不在支持列表检查官方支持列表改用 API Key 方式以官方文档为准npm install 卡住不动默认源过慢切换到 npmmirror 镜像源Git 相关命令执行失败git 没装或 user.name/email 未配置安装 Git执行git config --global user.name和user.email排查有一个通用技巧先分清楚是“工具本身的问题”还是“模型服务商的问题”。工具层面的问题多半出在环境、配置、权限服务商层面的问题多半是限流、余额、模型名。用这个二分法能省去大量瞎折腾的时间。7. 实操心得与工作流建议7.1 模型选择矩阵折腾完配置最终还是要落到“怎么用最舒服”。我个人的工作流已经稳定下来了复杂业务重构、遗留系统梳理、长文档代码解释用 Claude Code 官方模型批量代码规范检查、单测补全、自动化脚本生成用 Codex日常小改动、快速问答、格式调整、搜索引擎式的代码查询用 DeepSeek 或者其他第三方模型。这个选择逻辑基于一个重要观察官方模型和第三方模型的差距不在“能不能写代码”而在“复杂任务下的上下文管理能力”。简单任务上便宜模型和贵模型差距没那么大一旦任务需要跨十几个文件、理解整个模块的调用关系差距就会拉开。所以我才会把第三方模型定位在“低成本高频任务”而不是“全面平替”。7.2 配置管理的小技巧如果你在 Claude Code 和 Codex 之间频繁切换模型又不想依赖 cc-switch可以自己写一个简单的 shell 脚本把不同的配置模板存成几个文件用的时候 source 一下# 使用 DeepSeek 方案时 export DEEPSEEK_API_KEYsk-xxx export OPENAI_API_KEY export ANTHROPIC_BASE_URL export ANTHROPIC_AUTH_TOKEN这样做的最大好处是所有配置对你都是透明的不会出现“切过去之后不知道请求到底发给了谁”的情况。cc-switch 这类工具虽然方便但正因为把配置封装了一层出了问题反而更难看透。7.3 最后的经验之谈我在实际使用中发现命令行 AI 编程工具真正提升效率的前提不是模型有多强而是你要学会把任务拆得足够清晰。给 Claude Code 或 Codex 下任务时明确给出“涉及哪些文件”“验收标准是什么”“不允许改动哪些部分”结果质量会有质的提升。如果你配好了第三方模型也别忘了在任务里说明“按最佳实践输出”因为这些模型在指令遵循上确实需要更明确的引导。折腾这套工具链确实踩了不少坑从 Node 版本不对、npm 源超时到 cc-switch 代理失败、DeepSeek 限流但用顺了之后每天能省出至少一两个小时。建议你从 Codex 接 DeepSeek 入手这是成功率最高的路径成功之后再慢慢尝试 Claude Code 的网关方案。不要一次贪多先让一条链路跑通你有的是时间慢慢打磨自己的工作流。
返回列表