Codex CLI 从零安装到精通:config.toml 完全详解与 DeepSeek 接入实战(Mac 2026万字教程)

Codex CLI是OpenAI推出的命令行AI编程助手,对标Claude Code。它使用OpenAI的Responses API协议,支持文件读写、代码执行、Shell命令等工具调用。本文是2026年最详细的Codex CLI教程:从安装到config.toml每个字段的含义,从日常使用到DeepSeek接入,超过8000字,全部手把手截图级讲解。
一、Codex CLI 是什么?
Codex CLI是OpenAI在2025年底推出的命令行AI编程代理(Coding Agent)。它运行在终端中,能理解你的代码库、执行shell命令、读写文件、安装依赖——就像一个会编程的AI同事坐在你旁边。
和Claude Code一样,Codex CLI属于Agentic Coding工具:不是简单的代码补全,而是能自主完成编程任务的AI代理。你给它一个需求("给这个项目加单元测试"),它会自己读代码、写测试、运行、修复。
Codex CLI vs 其他AI编程工具
| 特性 | Codex CLI | Claude Code | Hermes Agent |
|---|---|---|---|
| 开发方 | OpenAI | Anthropic | Nous Research |
| API协议 | Responses API | Messages API | Chat Completions |
| 默认模型 | GPT-5 | Claude Opus 4 | 任意模型 |
| 开源 | 闭源 | 闭源 | MIT |
| DeepSeek | 需协议转换 | 原生兼容 | 原生支持 |
| 微信/多平台 | 不支持 | 不支持 | 支持 |
| 配置文件 | ~/.codex/config.toml | 环境变量 | config.yaml+.env |
Codex CLI的核心优势在于深度绑定OpenAI生态。如果你主要用GPT-5,Codex CLI是最佳选择。但如果你需要多模型切换、微信接入、定时任务等,Hermes Agent更合适。
二、环境准备
2.1 系统要求
- 操作系统:macOS 12+ / Windows 10+ / Linux
- Node.js:18.0.0 或更高版本(必须)
- npm:9.0+(随Node.js一起安装)
- 磁盘空间:至少500MB
- 网络:需要稳定连接API
2.2 安装Node.js(Mac)
# 方式一:Homebrew(推荐) brew install node@18 # 方式二:nvm(推荐高级用户) curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.0/install.sh | bash source ~/.zshrc nvm install 18 nvm use 18 # 验证 node --version # v18.x.x+ npm --version # 9.x.x+
2.3 配置npm(避免EACCES权限错误)
mkdir -p ~/.npm-global npm config set prefix '~/.npm-global' echo 'export PATH=~/.npm-global/bin:$PATH' >> ~/.zshrc source ~/.zshrc
三、安装Codex CLI
npm install -g @openai/codex-cli codex --version # 验证 which codex # 查看安装位置
常见安装错误
EACCES:按2.3节配置npm用户目录,不要sudo。
node版本过低:brew upgrade node 或 nvm install 18。
ENOTFOUND:网络问题,npm config set proxy http://127.0.0.1:7890。
command not found: codex:PATH不包含npm全局bin目录,检查echo $PATH。
更新与卸载
# 更新 npm update -g @openai/codex-cli # 卸载 npm uninstall -g @openai/codex-cli rm -rf ~/.codex
四、config.toml 完全详解
config.toml是Codex CLI的核心配置文件,位置:~/.codex/config.toml。首次运行Codex会自动创建,你也可以手动编辑。
4.1 [model_providers] 节
定义API提供商。每个provider有这些字段:
| 字段 | 类型 | 必填 | 说明 |
|---|---|---|---|
base_url | string | 是 | API端点地址 |
api_key | string | 否 | API密钥,也可通过环境变量设置 |
wire_api | string | 否 | "responses"(默认)或"chat" |
requires_openai_auth | bool | 否 | 第三方API填false |
stream_idle_timeout_ms | int | 否 | 流式超时,默认300000 |
完整示例:
[model_providers.openai] base_url = "https://api.openai.com/v1" api_key = "sk-your-key" [model_providers.ccswitch] base_url = "http://127.0.0.1:7890/v1" wire_api = "responses" requires_openai_auth = false stream_idle_timeout_ms = 300000 [model_providers.deepseek_proxy] base_url = "http://127.0.0.1:11435/v1" wire_api = "responses" requires_openai_auth = false
4.2 [profiles] 节
定义可用模型配置:
| 字段 | 说明 |
|---|---|
model_provider | 引用上面定义的provider名称 |
model_name | 模型标识:gpt-5 / deepseek-v4-pro等 |
context_window | 上下文窗口大小 |
max_output_tokens | 最大输出token数 |
完整示例:
[profiles.gpt5] model_provider = "openai" model_name = "gpt-5" context_window = 200000 max_output_tokens = 32768 [profiles.deepseek] model_provider = "ccswitch" model_name = "deepseek-v4-pro" context_window = 1000000 max_output_tokens = 32768 [profiles.deepseek.features] tool_search = false tool_search_always_defer_mcp_tools = false
4.3 全局设置 [settings]
[settings] default_profile = "gpt5" max_concurrent_tools = 5 tool_call_timeout_ms = 60000
五、命令行使用全指南
# 交互模式 codex codex --profile deepseek # 单次查询 codex -p "写Python快速排序" # 分析文件 codex -p "解释这个文件" < app.py # 管道输入 cat error.log | codex -p "分析错误日志" # 自动接受编辑(谨慎) codex --accept-edits -p "重构这个文件" < old.py # 详细日志 codex --verbose -p "debug this"
六、通过CC-Switch使用Codex
# 1. 确保CC-Switch运行 lsof -i :7890 # 2. config.toml [model_providers.ccswitch] base_url = "http://127.0.0.1:7890/v1" wire_api = "responses" requires_openai_auth = false # 3. 使用 codex --profile deepseek
七、接入DeepSeek完整流程
# 1. 部署ccswitch-deepseek git clone https://github.com/liuzhengming/ccswitch-deepseek.git cd ccswitch-deepseek && npm install echo "api_key=sk-your-key" > .env && npm start # 2. config.toml [model_providers.deepseek_proxy] base_url = "http://127.0.0.1:11435/v1" wire_api = "responses" requires_openai_auth = false [profiles.deepseek] model_provider = "deepseek_proxy" model_name = "deepseek-v4-pro" context_window = 1000000 max_output_tokens = 32768 # 3. 使用 codex --profile deepseek -p "写冒泡排序"
八、FAQ(10个常见问题)
Q1: EACCES权限错误?不要sudo,按2.3节配npm用户目录。
Q2: config.toml不生效?检查拼写(.toml不是.tom)、缩进、重启终端。
Q3: DeepSeek报model not found?Codex用Responses API,DeepSeek只支持Chat API,必须用ccswitch-deepseek转换。
Q4: tool_search为什么设false?DeepSeek限制128工具,超过报错。ccswitch-deepseek自动裁剪。
Q5: 如何查看token用量?交互模式输入/usage,或查看CC-Switch请求日志。
Q6: 能同时用Codex和Claude Code吗?可以。两个终端分别运行,CC-Switch统一管理API。
Q7: 支持哪些编程语言?和底层模型一致,主流语言均精通。
Q8: 如何限制文件修改权限?用--no-tools参数,或配置allowed_tools列表。
Q9: CLI和VS Code插件区别?CLI是自主Agent,插件是补全工具,两者互补。
Q10: 更新后配置丢失?config.toml在~/.codex/,更新不会覆盖。
九、总结
brew install node@18→npm install -g @openai/codex-cli- 配置~/.codex/config.toml:定义provider和profile
- 用CC-Switch统一管理API,用ccswitch-deepseek接入DeepSeek
- 日常使用:
codex --profile deepseek开始编程
Codex CLI是2026年AI编程三巨头之一。虽然接入DeepSeek比Claude Code多一步协议转换,但配合CC-Switch和ccswitch-deepseek后体验同样流畅。花30分钟搭好环境,长期享受AI辅助编程效率。
本文链接:https://www.kkkliao.cn/?id=3897 转载需授权!
版权声明:本文由廖万里的博客发布,如需转载请注明出处。



手机流量卡
免费领卡·号卡店铺
关于本站
