Codex CLI 是什么?一文读懂 OpenAI 的终端 AI 编程助手

OpenAI 发布了一款运行在终端的 AI 编程助手,它不是网页对话框,而是真正能读写你的文件、执行 shell 命令、完成多步骤任务的 Agent。本文从零讲清楚它是什么、能做什么、和 ChatGPT 有何不同。

TL;DR

Codex CLI 是 OpenAI 开源的终端原生 AI 助手,直接运行在你的命令行里,能读写文件、执行 shell 命令、调用 API,是 ChatGPT 的「动手版」。

Codex CLI 的核心定位

很多人第一次听到 Codex CLI 时,会把它和 ChatGPT 混淆——都是 OpenAI 出品,都能回答编程问题。但两者的本质完全不同:

  • ChatGPT 是对话界面:你在浏览器里打字,它回复文字,仅此而已。
  • Codex CLI 是 AI Agent:它在你的终端里运行,能直接操作你的计算机。

OpenAI 官方将其定位为「一个轻量级编程助手,在终端执行任务」。具体来说,它能做到:

  • 读取并修改本地文件(无需手动粘贴代码)
  • 执行任意 bash/shell 命令
  • 调用外部工具和 API
  • 多步骤自动完成复杂任务,中途向你确认关键操作
bash — Codex CLI 基本用法示例
# 问 Codex 帮你写代码
$ codex "写一个 Python 爬虫,爬取 Hacker News 首页标题"

# 让它修 bug
$ codex "这段代码有个 off-by-one 错误,帮我修复" --file main.py

Codex CLI 在 2025 年 4 月由 OpenAI 以 MIT 协议开源,任何人都可以免费使用和修改(但调用 API 需要消耗 OpenAI token)。

与 ChatGPT / Claude 的区别

一张表说清楚三者的核心差异:

维度 ChatGPT(网页) Codex CLI Claude Code
运行环境 浏览器 终端 终端
文件访问 需上传 直接读写本地文件 直接读写本地文件
执行命令
开源 ✓ (MIT)
计费方式 ChatGPT 订阅 API token Claude 订阅 / API
最适合 对话问答 自动化脚本 / 代码任务 复杂项目开发
i

与 Claude Code 的详细对比(模型能力、定价、适用场景)见 Codex CLI vs Claude Code 对比 页面。

核心功能一览

Codex CLI 不只是一个「终端版 ChatGPT」,它内置了一系列面向开发者的工程化功能:

  1. 多模型支持:默认使用 o4-mini,也支持 o3GPT-4.1 等,通过 --model 参数随时切换。不同模型在速度、成本、推理能力上各有侧重。
  2. Sandbox 沙盒:对文件读取、写入、命令执行分别设置权限级别(read-only / write / execute),并支持 Docker 隔离,在安全环境中执行高风险操作。
  3. 多模态输入:通过 --image 参数传入截图或图片,Codex 可直接分析 UI 截图、报错截图后给出操作建议。
  4. 上下文感知:Codex 会自动读取项目根目录的 AGENTS.mdCODEX.md 文件,获取项目特定指令、编码规范和背景信息。
  5. 会话管理:使用 /history 查看历史对话,--resume 参数恢复上一次会话,适合跨天的持续任务。
  6. 完全开源:MIT 协议,GitHub 源代码完全可见,可自行修改和扩展。

典型使用场景

Codex CLI 在以下场景中能显著提升开发效率:

🐛

调试代码

粘贴报错信息,Codex 直接定位问题所在,给出修复方案并在确认后自动应用到文件。

📝

编写脚本

用自然语言描述需求,生成可直接运行的 bash 或 Python 脚本,无需手写样板代码。

🔍

代码审查

运行 codex "review this code for security issues",快速扫描安全漏洞和潜在问题。

📁

文件操作

批量重命名文件、格式转换、内容提取——只需一句话描述,Codex 处理好所有文件。

🚀

DevOps 辅助

生成 Dockerfile、GitHub Actions 工作流、CI/CD 配置,基础设施即代码变得更简单。

📖

文档生成

自动为函数、类、模块生成 JSDoc / Python Docstring 注释,以及完整的 README 文档。

工作原理简述

理解 Codex CLI 的工作机制,有助于你更好地使用它并预判它的能力边界:

Codex CLI 工作流程
你的终端 → codex CLI → OpenAI API (o4-mini)
               ↓              ↓
          本地执行    ←   工具调用指令
     (bash/文件操作)

完整流程如下:

  1. 你在终端输入任务描述,Codex CLI 将请求(含上下文)发送给 OpenAI API。
  2. 模型返回回复文本,同时附带结构化的「工具调用指令」(如:读取某文件、执行某命令)。
  3. Codex CLI 在本地执行这些工具调用——读写文件、运行 shell 命令等。
  4. 执行结果返回给模型,模型根据结果决定下一步操作。
  5. 如此循环,直到任务完成或需要你的确认。
注意

Codex CLI 执行命令需要你的确认approval_policy 参数控制),默认情况下不会静默执行高风险操作(如删除文件、修改系统配置)。你可以通过配置调整审批策略。

5 分钟快速开始

按以下步骤,5 分钟内完成安装并发出第一个任务:

  1. 安装:确保已安装 Node.js 22+,然后运行:
    bash
    $ npm install -g @openai/codex
  2. 登录:运行 codex login,按提示完成 OpenAI API Key 配置(需要在 platform.openai.com 申请)。
  3. 启动:在任意项目目录运行 codex,进入交互界面。
  4. 输入第一个任务:例如输入 ls -la 或「帮我写个打印 Hello World 的 Python 脚本」,观察 Codex 如何响应并执行。

想了解更多安装细节(Node.js 版本要求、Homebrew 安装、常见报错)?请查看 完整安装指南。首次运行和登录配置详见 登录与首次运行

常见问题

Codex CLI 和 GitHub Copilot 有什么区别?

两者定位完全不同:GitHub Copilot 集成在 VS Code、JetBrains 等编辑器里,主要提供代码补全功能,你写一半它帮你补全剩下的。

Codex CLI 运行在终端,是一个自主 Agent——你给它一个目标(如「重构这个模块」),它可以自行读取文件、执行命令、修改代码,直到任务完成。更适合自动化、批量处理和复杂的多步骤任务。

Codex CLI 需要网络吗?

是的,Codex CLI 依赖 OpenAI API 处理每个请求,必须联网才能工作,目前不支持本地离线模型。

中国大陆用户由于网络限制,需要配置代理才能连接 OpenAI API。详见 国内使用与代理配置 页面。

Codex CLI 安全吗?会不会把我的代码发给 OpenAI?

Codex CLI 发送给 API 的内容(包括你的代码片段和指令)确实会传输给 OpenAI 服务器处理,这是其工作原理的必要部分。

关于隐私:OpenAI 默认不会用 API 请求数据训练模型,但你需要在 platform.openai.com 的隐私设置中确认并启用此选项。对于敏感代码(密钥、私有算法等),建议在项目根目录创建 .codexignore 文件排除敏感文件。

能在 Windows 上用吗?

可以使用,但推荐通过 WSL2(Windows Subsystem for Linux) 来运行,兼容性和体验最佳。在 WSL2 中按照 Linux 的安装步骤操作即可。

直接在 Windows PowerShell 或 CMD 中运行也可以,但部分功能(如 bash 命令执行)可能受限。WSL2 的网络代理配置需要额外注意,详见 WSL2 网络配置

Codex CLI 和旧版 OpenAI Codex 是同一个东西吗?

不是,两者完全不同:

旧版「Codex」是指 OpenAI 的 code-davinci-002 语言模型(GitHub Copilot 早期使用的底层模型),已于 2023 年 3 月正式停用。

Codex CLI 是 2025 年 4 月发布的全新开源命令行工具,底层使用 o4-mini 等新一代模型,功能和架构与旧版 Codex 模型毫无关系。