Codex 这名字最近在开发者圈子里刷屏的频率,快赶上来一杯下午茶的频率了。它是 OpenAI 推出的 AI 编程助手,核心能力简单说就是:你写在终端里和它说一句人话,它就能在你本地的项目文件夹里直接动手改代码、跑命令、查日志、写文件。不是那种“你复制问题它回复答案”的聊天工具,而是能全程参与实际开发流程的自动编程智能体。
这篇教程我打算从头写到尾:从 Codex 是什么、怎么选版本,到环境准备、安装下载、注册登录、接入第三方模型(比如 DeepSeek)、第一次实操,再到我踩过的各种报错怎么排查。目标很简单——哪怕是完全没碰过命令行的小白,跟着一步步操作也能在半小时左右把它跑起来。如果你已经装到一半卡住了,直接跳到对应的章节找答案。
1. 动手前先花五分钟搞懂 Codex
1.1 Codex 不是聊天机器人,而是“能动手的 AI 开发搭子”
很多新手第一次听到 Codex,以为是又一个类似 ChatGPT 的网页对话框。这个理解偏差会导致后续很多操作习惯上的错乱。Codex 的定位是“通过自然语言驱动,在你真实的项目代码环境里完成开发任务”,它的工作方式更像一个坐在你旁边的同事:你给它一个带上下文的指令,比如“帮我检查一下登录接口的异常处理,然后把缺失的错误码补齐全”,它会自己去读相关文件、分析现有代码风格,然后动手改,改完跑测试给你看结果。
这个“能动手”的差异非常重要。普通 AI 聊天是“问答闭环”,它给你代码片段,你自己复制粘贴、自己找位置、自己测。Codex 是“任务闭环”,它直接在项目里操作文件系统、执行终端命令,把一件完整的小任务从头到尾做完。正因为如此,它对环境的依赖就更多,比如身份认证、模型配置、本地权限、文件读取范围等等,这也是为什么它比装一个普通聊天软件要多几个步骤的原因。
1.2 官方主要三条产品线,选适合你的那一条
很多人在搜索“codex 安装包”“codex 桌面版”“codex 插件”的时候,发现版本好像长得不一样,并不是眼花,而是 Codex 官方和生态里确实有几种不同的使用形态。
| 产品形态 | 适合人群 | 特点 |
|---|---|---|
| Codex CLI(命令行) | 习惯用终端、写代码的人 | 功能最全面,可通过命令codex启动交互式会话,也可以codex exec一次性执行任务 |
| Codex Desktop(桌面版) | 新手友好、不习惯命令行的人 | 带图形界面,左侧对话、右侧文件改动预览,操作直观 |
| VS Code 插件 | 日常使用 VS Code 写代码的人 | 在编辑器侧边栏直接打开 Codex 面板,选中代码就能下达修改指令 |
我的建议是,零基础优先用桌面版或 VS Code 插件,先跑通一次完整对话再决定要不要深入 CLI。如果你已经有写脚本的习惯,那直接用 CLI 是最顺手的,因为很多进阶配置和第三方模型接入的功能,文档和社区教程都默认以 CLI 为主来讨论。
1.3 安装使用前要准备的三样东西
动手之前先自查一遍,避免装到一半才发现缺这缺那:
- 一台能正常联网的电脑,Windows 10/11 或 macOS 12 以上都可以。
- 一个常用的邮箱,以及一个能收到验证码的手机号,注册账号和登录验证都要用。
- 一块至少 8GB 内存、10GB 空闲磁盘的机器,Codex 本身不大,但后续操作项目、跑测试、装依赖会占用不少空间。
另外建议先准备一个用于测试的空文件夹,比如D:\codex-test或~/codex-test,第一次实操时当成“练手项目”用,免得直接在真实项目里让 AI 乱改,改错还得回滚。
2. 安装 Codex 的完整环境和下载路径
2.1 先装 Node.js,CLI 版的关键依赖
如果你打算用 Codex CLI,那必须提前装好 Node.js。Codex 的 CLI 工具通过 npm 发布,没有 Node.js 环境,后续的安装命令完全无法执行。即使你最终打算只用桌面版,我依然建议顺手装上 Node.js,因为很多后续的辅助工具(比如后面要讲的配置切换工具)也都依赖它。
安装步骤很简单:打开 Node.js 官网,下载 LTS 长期支持版本,比如 20.x 或 22.x。Windows 下直接运行安装包,一路“Next”即可,macOS 下推荐用官方 pkg 安装包。安装完成后,打开终端窗口(Windows 用 PowerShell,macOS 用“终端”App),输入下面两条命令验证是否成功:
node -v npm -v能看到版本号输出,比如v22.12.0和10.9.0,就说明环境正常。如果提示“node 不是内部或外部命令”,多半是安装时没有勾选“添加到 PATH”,重启一下终端窗口,或者重新运行安装包勾选对应选项再装一遍。
这里有一个特别容易踩的坑:不要只装一个预览版的最新 Node.js,比如某些 v23/v24 新特性版本看起来新,但很多第三方工具还没适配。老老实实用官网标注 LTS 的版本,稳定省心。
2.2 安装 Codex CLI:npm 一条命令
Node.js 装好之后,CLI 的安装其实就到只剩一条命令了。在终端里执行:
npm install -g @openai/codex这条命令的作用是全局安装官方 Codex 包。安装过程可能需要几十秒到几分钟,取决于网速和机器性能。安装完成后,输入:
codex --version如果能看到类似codex 0.xx.x的版本信息,就说明 CLI 安装成功。在这个阶段如果报权限错误(常见于 macOS/Linux),可以试试在命令前加sudo,或者配置 npm 的全局安装目录。Windows 下一般不会遇到权限问题,但如果用的是公司电脑,建议检查一下管理员权限。
2.3 桌面版和 VS Code 插件的安装
桌面版的安装相对更简单。打开 Codex 官网,找到对应的下载入口,选择 Windows 或 macOS 安装包下载。下载完后,Windows 下运行.exe或者.msix文件,macOS 下运行.dmg文件,按提示拖拽安装即可。装好后直接从启动菜单打开应用,如果能正常显示登录界面,就说明安装成功。
VS Code 插件的安装则更简单:打开 VS Code,进入“扩展”面板(快捷键Ctrl+Shift+X或Cmd+Shift+X),搜索codex,找到 OpenAI 官方发布的 Codex 扩展,点击“安装”。装完后左侧边栏会出现一个 Codex 图标,点开就可以使用。
安装桌面版或插件时需要注意:如果打开界面一直白屏或提示“正在重新连接”,大概率不是安装问题,而是网络层面没有正常连接到服务端。先检查本机网络是否能正常访问服务方页面,再检查系统代理设置是否干扰了请求,把代理关掉或者设置为“直连”后再重开应用,多数情况能解决。
3. 注册账号与登录,把每个坑说透
3.1 邮箱注册、手机验证的完整流程
首次打开桌面版,或者执行codex login,通常会自动跳到登录页面。如果还没有账号,点“注册”,填写邮箱,设置密码,然后系统会发一封验证邮件到你的邮箱。点开邮件里的验证链接后,一般会要求进行手机号验证,这里要提醒两点:
- 手机号必须是目前能正常接收短信的号码,验证码一般在几分钟内有效。
- 如果点击“发送验证码”后迟迟收不到,先检查手机是否拦截了海外短信,再检查填写的号码格式是否正确,包括国家区号。
手机号验证通过后,账号就算注册完成了。之后每次登录,桌面版通常可以直接登录,CLI 会调用系统浏览器完成授权。
3.2 CLI 登录方式:浏览器授权与回连
使用 CLI 时,首次运行codex或者执行codex login,它会主动打开浏览器,跳转到授权页面。你确认授权后,终端会自动检测到登录成功的回调,并在本地保存一份登录凭据,后续就不需要重复登录了。
这里有几个高频问题:
- 如果浏览器没有自动弹出授权页面,在终端输出的提示里找到授权链接,手动复制到浏览器打开。
- 如果授权后终端没有任何反应,等一下,别急着关浏览器,它可能要花几秒同步状态。
- 如果提示“codex auth token is unavailable”或“登录不上”,通用解决办法是删除本地旧的凭据缓存,然后重新执行
codex login。凭据缓存的路径通常在你的用户目录下的.codex文件夹里,删除里面的auth.json或类似文件时注意备份,删除后重新登录即可。
3.3 登录转圈、重新连接、组织设置加载失败的应急处理
很多人反映打开桌面版后一直转圈,或者显示“正在重新连接”,又或者提示“无法加载组织设置”。这类问题的共同根源,多半是客户端在启动时尝试连接服务端同步状态,但这个连接没有顺利建立。
应急排查步骤:
- 完全退出 Codex 桌面版(不要就关个窗口,要用任务管理器或者托盘菜单退出)。
- 关闭系统中可能影响网络连接的工具。这一步很关键,我觉得强调一下:这类工具不仅影响正常网页访问,也会干扰 Codex 客户端的长连接,导致登录后立即掉线。关掉后重开 Codex。
- 重启 Codex 应用,如果仍然不行,重启一次电脑再试。
- 检查系统时钟是否准确。同步网络时间后重新登录往往会解决很多莫名其妙的 token 验证错误。
如果登录流程反复失败,一定不要反复点击重试,越点越乱。先等 10 秒到 30 秒,再重新操作一次,防止触发服务端的防重复请求机制。
4. 接入 DeepSeek 等第三方模型,新手也能学会
4.1 为什么很多人给 Codex 接入 DeepSeek
Codex 默认使用的是 OpenAI 官方模型服务,登录账号后可以开箱即用。但在实际使用中,很多开发者会选择给 Codex 接入 OpenAI 兼容接口的第三方模型服务,比如 DeepSeek。原因通常有两个:一是成本可控,DeepSeek 类服务的 API 定价通常更亲民,适合大量、高频的编码调用;二是模型选择灵活,可以根据任务复杂度在同一套界面里切换不同模型,而不需要重新学习新的工具。
这里要澄清一个概念:接入第三方模型,不是把 Codex 这个工具本身破解或者魔改了,而是通过修改 Codex 的配置,让它把请求发送到你指定的 OpenAI 兼容 API 端点上。Codex 只要支持配置 base URL 和模型名,就能兼容大部分 OpenAI 格式的服务。
4.2 使用 CC Switch 快速配置 Codex 与 DeepSeek
手动修改 Codex 配置文件也可以,但对小白来说,CC Switch 这类配置切换工具会更直观。CC Switch 是一个本地配置管理工具,作用是帮你快速切换或者组合不同服务商的配置,生成 Codex 等工具能识别的配置文件,避免手工写错格式。
使用步骤大致如下:
- 下载并安装 CC Switch。它是一款桌面应用,官网或 GitHub 发行页面提供安装包,下载后按常规流程安装。
- 打开 CC Switch,在主界面里找到服务商列表,确认已经存在 DeepSeek 等兼容服务的预设档位。如果没有,可以手动新增一个:名称填
deepseek,Base URL 填 DeepSeek API 文档给出的 OpenAI 兼容地址,API Key 填你在 DeepSeek 开放平台申请的密钥。 - 在 CC Switch 里选择 Codex 作为你要配置的工具,让它生成对应的配置文件。这个生成过程会写入 Codex 的
~/.codex/config.toml(Windows 下是用户目录下的.codex\config.toml)。 - 保存配置后,最好用编辑器打开
config.toml看一眼,确认里面填的内容和你在 CC Switch 里设置的一致。
生成的配置内容大致长这样(具体字段以你使用的服务商说明为准):
model_provider = "deepseek" [model_providers.deepseek] name = "DeepSeek" base_url = "https://api.deepseek.com" env_key = "DEEPSEEK_API_KEY"这里env_key表示 Codex 会到环境变量里读取 API Key,所以如果你看到配置文件里没有明文密钥,不要奇怪,它是从环境变量读取的。在命令行里设置环境变量的方式如下:
Windows PowerShell:
$env:DEEPSEEK_API_KEY="你的密钥"macOS / Linux 终端:
export DEEPSEEK_API_KEY="你的密钥"设置完环境变量后,建议重启 Codex,确保它重新读取配置。
4.3 配置验证:第一次成功对话
配置完成后,在命令行输入codex,进入交互式界面,然后随便发一句简单的指令,比如:
写一个 Python 脚本,计算 1 到 100 的奇数和如果配置正确且网络正常,Codex 会先进入思考状态,然后给出结果。第一次运行由于要加载模型上下文,等待时间会稍长,十几秒到一分钟都正常。
这个测试能同时验证四件事:配置文件的路径是否正确、Base URL 是否能连上、API Key 是否有效、模型名是否被当前服务商支持。其中任何一环出问题,都有对应的报错,后面第 6 部分会仔细讲。
5. 第一次上手实操,从零跑通一个真实小任务
5.1 命令行基础操作:codex 和 codex exec
顺利登录并配置好模型后,就可以开始实际使用了。CLI 有两个核心启动方式,一定要分清楚。
- 直接在终端输入
codex,进入交互式会话模式。适合边聊边改、连续多轮对话完成任务。输入/help查看内置指令,输入/quit退出。 - 输入
codex exec "要做的任务描述",一次性执行一个任务后直接输出结果。适合丢一个明确指令、等待结果、然后回到自己流程中。
比如你想让 Codex 统计当前目录下所有 TS 文件的行数,可以这样:
codex exec "统计当前目录下所有 .ts 文件的行数并给出汇总"它在执行时会读取当前项目内容,先分析再执行,你在输出里能看到它跑了哪些命令、改了哪些文件。最后它会给你一份改动摘要。
第一次体验时,我强烈建议你先在一个空的测试文件夹里操作,命令如下:
mkdir codex-test cd codex-test codex然后给它一个很简单的指令,比如“初始化一个 npm 项目,创建 package.json,并在里面加一个打印 Hello Codex 的脚本”。整个流程走完,你对 Codex 的工作节奏就有感觉了。
5.2 桌面版和 VS Code 插件的基本用法
桌面版的操作逻辑是:在主输入框里描述任务,它会按步骤执行。左侧一般是对话历史,中间显示执行内容,右侧展示文件改动。点击每处改动,可以按块接受或者拒绝。这样避免了 AI 一改改一堆、想回退都难的情况。
VS Code 插件的用法差异不大:用鼠标选中一段代码,然后通过右键菜单或侧边栏输入框发指令,比“全项目对话”更精准。比如你选中一个接口函数,输入“给这个函数加超时重试逻辑”,它只会针对这块代码做修改。
5.3 理解 Agent 沙盒机制:为什么改动会被“拦”下来
Codex 在改动文件或执命令行命令之前,往往会先给出一份执行计划,让你确认。这个机制叫 Agent 沙盒。它是一个安全限制层,作用是防止 AI 在你机器上随意删除文件或者在伪方法中修改系统配置。
实际体验就是:你发一个指令,Codex 先分析,然后输出它准备执行的命令或文件改动,并等待你按确认。在一开始你会觉得多按了几次确认有点烦,但用久了就会发现这是关键保护。特别是当 Codex 要执行rm -rf这种危险命令时,沙盒弹窗能救你一次。在桌面版和 VS Code 插件里,遇到类似“更新 Agent 沙盒”或“是否允许修改”的提示,按需允许即可。如果你完全信任当前任务和项目目录,也可以设置成自动允许,但不建议在对系统目录做操作时这么干。
6. 高频报错与排查实录,把常见问题一次性讲明白
6.1 认证类错误:auth token is unavailable / 登录不上
错误提示出现codex auth token is unavailable,一般有这几种原因:
- 从来没登录过,CLI 里没有凭据缓存。
- 登录凭据失效,比如密码改了、服务端吊销了 token。
- 系统时间不对导致 token 校验失败。
解决办法第一步是看系统时间是否自动同步,第二步重新登录:
codex login如果你已经登录但依然报错,删除旧凭据缓存后重新登录。~/.codex目录下的凭据文件删掉后,执行codex login会重新走授权流程。注意只删除凭据相关文件,不要把整个.codex目录删掉,否则模型配置也没了。
6.2 本地转发服务报错:cc switch local proxy failed while handling codex endpoint /responses
这个报错是很多接入 CC Switch 后使用第三方模型时最常见的问题。错误信息里的local proxy指的是 CC Switch 在本机启动的一个本地转发服务,它把 Codex 发送到本地端口的请求再转发到 DeepSeek 等上游 API,同时做一些格式兼容处理。如果这个本地转发服务本身没运行,或者转发到上游时出了问题,就会出现这样的提示。
排查顺序如下:
- 确认 CC Switch 主程序正在运行,而不是只在生成完配置后就关了。本地转发服务是 CC Switch 运行时提供的,关掉它就等于把桥拆了。
- 确认本地端口没有被占用。Codex 配置里的 base_url 如果是指向
http://127.0.0.1:9527这类地址,先检查这个端口是否被别的程序占了。Windows 下可以执行netstat -ano | findstr 9527,macOS / Linux 执行lsof -i :9527来查看。 - 确认 API Key 正确且有效,在 DeepSeek 开放平台里检查密钥状态是否正常。
- 确认模型名兼容
/responses接口。Codex 新版默认走/responses端点,如果上游服务商只支持 OpenAI 兼容的/chat/completions,就必须靠 CC Switch 这类工具做转换。如果 CC Switch 版本太旧,对新接口支持不好,也容易出现此报错。更新 CC Switch 到最新版后再试试。 - 关闭并重启 CC Switch,在它的日志界面里通常能看到具体是哪一步转发失败了,比在 Codex 里干猜要准得多。
6.3 配置不识别:codex is ignoring 1 unrecognized configuration setting
看到这个提示,说明config.toml里有 Codex 不认识的配置项。常见的误操作是把其他工具的配置内容粘了进来,或者按键拼错了。
解决办法是打开config.toml,对照文本把那些多余或不存在的字段删掉。如果不知道哪些该删,最稳妥的办法是把配置文件备份一份,然后把内容精简成只保留模型提供商和模型名两个核心部分,重新跑一次,再一点点把其他功能配置加回来。这样能快速定位是哪一行引发的“不被识别”。
6.4 模型不支持报错:the 'xxx' model is not supported when using codex with a chatgpt acc
这类报错出现时,报错里的模型名通常是你在配置里指定的名字,比如'gpt-5.6-sol'或者'gpt-6-astra'。原因很简单:当前使用的账号类型或服务商并不支持你配置的那个模型代号,要么是模型名写错了,要么是模型虽然存在但不对当前接入方式开放。
先检查模型名是否与你使用的服务商文档完全一致,注意大小写和版本后缀。如果你接的是 DeepSeek,就填 DeepSeek 提供的模型代号,比如deepseek-chat或deepseek-reasoner。如果你用的是官方 ChatGPT 账号默认服务,就不要随意把第三方模型的代号填到官方配置里。把配置文件里的 model 字段改成正确的模型名,重启 Codex 再试。
6.5 Windows 专属报错:start the windows daemon from a non-elevated terminal
这个报错的意思是 Codex 在 Windows 上启动后台守护进程时,检测到你当前是在“管理员权限”的终端里启动的,而它要求普通权限。这是 Windows 环境下比较特殊的权限设计问题。
解决办法:关掉当前管理员终端,打开一个普通权限的 PowerShell 或命令提示符窗口,再启动codex。如果是一般双击桌面图标启动桌面版,就没有这个限制。如果你之前一直用管理员终端,是因为想把 npm 全局安装做好,装完之后正常使用时务必回到普通终端。
在 Windows 上使用 Codex 还有个小经验:路径中尽量别带中文和空格,终端对复杂路径的兼容性不如 macOS / Linux 那边稳,遇到诡异报错可以先检查路径。
6.6 连接与沙盒相关:“正在重新连接”“无法发送消息,显示更新 Agent 沙盒”
桌面版不断显示“正在重新连接”,大部分情况是客户端的实时连接断开。先检查网络稳定性,再重启应用。如果经常出现这种情况,也可以考虑改用 CLI,因为 CLI 的连接方式更轻量,不依赖桌面图形客户端的实时推送机制。
“无法发送消息,显示更新 Agent 沙盒”通常是沙盒组件需要更新但更新过程被拦截了。遇到这种情况,到 Codex 设置里找到沙盒或安全选项,确认更新权限是否被关闭,或者手动去官网下载最新版覆盖安装。
6.7 其他常见问题速查表
| 问题现象 | 大概率原因 | 处理办法 |
|---|---|---|
| 安装命令执行后无反应 | npm 源地址慢或不可达 | 更换 npm 镜像源后重试 |
codex命令找不到 | Node.js 全局目录在 PATH 里没生效 | 重启终端,或重新安装 Node.js |
| 桌面版无法打开 | 安装包损坏、缺少运行库 | 重新下载安装包并覆盖安装 |
| 第三方模型一直超时 | 模型上下文太长或密钥限流 | 缩小任务范围或更换模型试 |
| 修改被沙盒拒绝 | 默认安全策略限制 | 在确认改动安全的情况下允许该轮操作 |
最后再分享一点我自己的体会
Codex 装上以后,真正拉开使用体验差距的往往是配置细节和对报错的理解。我第一次玩的时候,因为配置文件中一个字段名拼错,白白排查了大半小时。现在我的习惯是:每改一次配置文件,就运行一次codex发一条最简单的消息测试,不为图快,只为确认改动是否生效。
另外给大家一个实打实的建议:刚开始用 Codex 千万别直接拿生产项目给它练手。先用一个测试文件夹把整个流程跑顺,理解它的任务执行方式、改动显示方式、沙盒确认机制,再放到真实项目里用。我在实际使用中最重要的体会是,Codex 能大幅缩短重复性编码的耗时,但它的每个输出都需要你带着审视的眼光确认。把它当成一个效率极其高的助理,而不是可以完全甩手不管的自动驾驶,这是这个工具最正确的打开方式。