过去,我们使用 AI 编程,通常是把代码复制到聊天窗口,得到答案后再手动改回项目。

而 Codex CLI 的思路不一样:它直接运行在终端中,能够理解整个代码目录、读取和修改文件、执行命令、运行测试,并根据结果继续修正。

更重要的是,Codex CLI 和背后的大模型并不是同一个东西。我们既可以让它连接 OpenAI 模型,也可以连接 Ollama、LM Studio、本地开源模型,或者其他兼容的模型服务。

本文将讲清楚:Codex CLI 究竟是什么、能够做什么、费用怎么算,以及如何切换云端和本地模型。


一、Codex CLI 是什么?

Codex CLI 是一个运行在终端中的开源代码 Agent。

普通 AI 聊天工具主要负责“回答问题”,而代码 Agent 不仅要回答,还要在授权范围内完成一系列操作:

  • 浏览和理解项目目录;

  • 搜索代码和追踪调用关系;

  • 创建、修改和删除文件;

  • 执行编译、测试、格式化等命令;

  • 阅读报错并继续修复;

  • 检查 Git 变更;

  • 根据项目规范完成一整项开发任务。

例如,我们可以直接在项目目录中告诉它:

<span leaf="">ounter(<span>line</span></span>

Codex CLI 会先查看相关文件,定位问题,修改代码,再运行测试验证结果。它不只是生成一段代码,而是在执行一套完整的工程流程。

可以用一个简单的比喻理解:

<span leaf="">ounter(lineounter(line</span>

Codex CLI 负责连接文件系统、终端、Git、Skills 和 MCP 工具;模型负责判断下一步该做什么。

Codex CLI 与大模型的架构关系

<span leaf="">ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(<span>line</span></span>

整个运行过程形成一个不断反馈的闭环:

  1. 用户向 Codex CLI 提出目标;

  2. Codex CLI 收集项目文件、规则和历史上下文;

  3. 大模型分析信息并决定下一步行动;

  4. Codex CLI 在权限范围内调用文件、终端、Git、Skill 或 MCP 工具;

  5. 工具结果和报错重新交给大模型判断;

  6. 循环执行,直到任务完成、需要用户决策或确认无法继续。

所以,大模型不会直接伸手修改电脑。它负责决定“应该做什么”,Codex CLI 负责在受控环境中执行“具体怎么做”,再把真实结果反馈给模型。


二、Codex CLI 本身免费吗?

Codex CLI 本身是开源软件,可以免费安装和使用。

但 CLI 免费,不代表模型推理也一定免费。实际费用取决于它连接的模型:

| 模型来源

|

费用方式

Ollama、LM Studio 本地模型

|

不收取模型调用费,但消耗本机 CPU、GPU、内存和电力

| |

ChatGPT 账号

|

使用量计入对应 ChatGPT 套餐及额度

| |

OpenAI API Key

|

按 API Token 使用量计费

| |

Amazon Bedrock、Azure 等云服务

|

按对应云平台规则计费

| |

自定义第三方模型 API

|

按第三方服务商规则计费

|

因此,更准确的说法是:

Codex CLI 是免费的 Agent 运行框架,真正产生推理成本的是它所连接的大模型。


三、Codex CLI 能做什么?

1. 理解大型代码库

它可以使用搜索、目录遍历和代码阅读工具,分析模块之间的依赖关系,回答“这个接口从哪里调用”“订单状态在哪里更新”等工程问题。

2. 直接修改代码

Codex CLI 可以创建补丁、修改多个文件,并尽量保留项目中原有的代码风格和用户尚未提交的修改。

3. 执行并验证

它能够运行测试、构建和静态检查,根据执行结果继续修复,而不是把一份未经验证的代码直接交给用户。

4. 使用 Skills

Skill 是可复用的工作流程。例如,团队可以编写一个“发布前检查 Skill”,要求 Agent 每次按照固定顺序执行测试、检查数据库变更、生成发布记录。

5. 连接 MCP 工具

通过 MCP,Codex CLI 可以连接数据库、内部系统、文档平台和其他工具。模型负责决策,MCP 服务负责提供实时数据和受控操作。

6. 控制操作权限

Codex CLI 提供沙箱和审批机制。读取文件、写入文件、联网或执行高风险命令,可以设置不同的授权策略,避免 Agent 获得不必要的系统权限。


四、安装 Codex CLI

已经安装 Node.js 和 npm 的情况下,可以执行:

<span leaf="">ounter(<span>line</span></span>

检查是否安装成功:

<span leaf="">ounter(<span>line</span></span>

进入项目目录并启动:

<span leaf="">ounter(lineounter(<span>line</span></span>

第一次连接 OpenAI 服务时,可以运行:

<span leaf="">ounter(<span>line</span></span>

它会打开浏览器,使用 ChatGPT 账号完成登录。

如果使用 OpenAI API Key,可通过标准输入登录:

<span leaf=""><span>ounter</span>(line</span>

API Key 不要直接写进代码、Git 仓库或公开脚本中。


五、Codex CLI 支持哪些模型?

这里需要区分两个概念:

  • 模型(Model):真正执行理解和推理的 AI,例如某个代码模型或通用大模型;

  • 模型提供方(Provider):向 Codex CLI 提供模型接口的服务。

Codex CLI 当前提供或支持的主要接入方式包括:

1. OpenAI

可以使用 ChatGPT 账号登录,也可以使用 OpenAI API Key。具体可选模型取决于账号、套餐、API 权限以及当时的产品配置。

2. Ollama

Ollama 用于在本机运行开源模型。模型文件下载完成后,推理过程可以完全在本地进行。

3. LM Studio

LM Studio 提供图形化的本地模型管理和推理服务,适合希望通过桌面界面下载、加载和切换模型的用户。

4. Amazon Bedrock

Codex CLI 内置了 Amazon Bedrock Provider,可通过 AWS 凭据、区域和 Bedrock 模型 ID 进行配置。

5. Azure 与自定义 Provider

Codex CLI 可以配置 Azure 或其他自定义模型服务,包括企业内部网关、模型代理以及兼容所需接口协议的第三方平台。

需要注意:支持自定义 Provider,不代表任何聊天 API 都能无缝使用。接口协议、流式响应、工具调用和模型能力都需要兼容。


六、如何切换模型?

Codex CLI 有三种常用切换方式。

方法一:启动时临时指定

<span leaf="">ounter(<span>line</span></span>

例如:

<span leaf="">ounter(<span>line</span></span>

这个设置只影响当前启动,不修改全局默认值。

方法二:修改默认配置

Codex CLI 的用户配置文件位于:

<span leaf=""><span>ounter</span>(line</span>

设置默认模型:

<span leaf="">ounter(<span>line</span></span>

以后直接执行 codex,就会优先使用该模型。

方法三:同时切换 Provider 和模型

<span leaf="">ounter(lineounter(line</span>

模型名称由对应 Provider 决定。同一个名称在不同服务商中不一定指向同一个模型,因此切换时需要同时确认 Provider。


七、如何连接本地模型?

本地部署最大的优势是代码和 Prompt 可以不离开本机,也不会产生按 Token 计算的模型调用费用。

方案一:使用 Ollama

先安装 Ollama,然后下载一个适合编程和工具调用的模型:

<span leaf="">ounter(<span>line</span></span>

查看已安装模型:

<span leaf="">ounter(<span>line</span></span>

使用 Codex CLI 的本地开源模型模式启动:

<span leaf="">ounter(<span>line</span></span>

也可以在 ~/.codex/config.toml 中设置默认本地 Provider:

<span leaf="">ounter(lineounter(line</span>

以后使用:

<span leaf="">ounter(<span>line</span></span>

方案二:使用 LM Studio

在 LM Studio 中下载并加载模型,启动本地服务后执行:

<span leaf="">ounter(<span>line</span></span>

或者设置:

<span leaf="">ounter(lineounter(line</span>

本地模型怎么选?

本地模型至少要具备较好的代码能力、指令遵循能力和工具调用能力。参数量越大,通常效果越好,但需要更多内存和显存。

以普通个人电脑为例:

  • 16GB 内存:优先尝试 7B/8B 量化代码模型;

  • 32GB 内存:可以尝试更大或更高精度的模型;

  • 独立显卡:重点关注显存大小,而不仅是系统内存;

  • Apple Silicon:统一内存可以同时供 CPU 和 GPU 使用,但也要给操作系统保留空间。

不要只看模型能否启动,还要测试它是否能稳定调用工具、修改多个文件并完成测试闭环。


八、如何连接自定义云端模型?

如果模型服务提供兼容接口,可以在 ~/.codex/config.toml 中定义 Provider:

<span leaf="">ounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(lineounter(line</span>

然后通过环境变量提供密钥:

<span leaf=""><span>ounter</span>(<span>lineounter</span>(line</span>

也可以只在本次启动时覆盖配置:

<span leaf="">ounter(line</span>

接入第三方服务前需要确认:

  1. 服务是否支持 Codex 所需的接口协议;

  2. 模型是否支持工具调用和流式输出;

  3. 服务是否会存储上传的代码;

  4. 是否允许商业使用;

  5. 数据、账号和支付方式是否符合当地法规与服务条款。


九、本地模型和云端模型怎么选?

| 对比项

|

本地模型

|

云端模型

数据隐私

|

代码可不离开本机

|

代码需要发送给服务商

| |

使用成本

|

无 Token 费用,但有硬件成本

|

通常按套餐或 Token 计费

| |

模型能力

|

受本机硬件限制

|

通常可以使用更强模型

| |

部署难度

|

需要下载和管理模型

|

登录或配置 API Key 即可

| |

速度

|

取决于本机硬件

|

取决于网络和服务负载

| |

工具调用稳定性

|

不同开源模型差异较大

|

优质 Agent 模型通常更稳定

|

如果只是学习和处理小型项目,本地 7B/8B 模型可以作为起点;如果需要大型代码库分析、复杂重构和较高的工具调用成功率,通常需要更强的模型。

也可以采用混合方式:日常简单任务使用本地模型,复杂任务再切换到符合使用条件的云端模型。


十、国内使用需要注意什么?

中国大陆目前不在 OpenAI 官方公布的 ChatGPT 和 API 支持地区列表中。官方说明,从非支持地区访问或向非支持地区提供服务,可能导致账号被阻止或暂停。

因此,国内用户不应把“能够连接”理解成“官方支持”,也不建议依赖规避地区限制的方式使用重要账号。

如果希望在国内研究 Codex CLI 的 Agent 工作方式,可以考虑:

  • 使用 Codex CLI 的 --oss 模式连接本地 Ollama;

  • 使用 LM Studio 运行本地开源模型;

  • 在符合服务条款和当地法规的前提下,连接合法可用的模型 Provider;

  • 对企业代码重点检查第三方服务的数据保留、训练使用和隐私条款。

本地模型模式使用的是 Codex CLI 的 Agent 框架,而不是 OpenAI 云端 Codex 模型。两者在模型能力、插件、云端任务和部分产品功能上会存在差异。


十一、常见误区

误区一:安装 Codex CLI 后就可以免费使用所有模型

错误。CLI 可以免费安装,但云端模型仍按账号套餐或 API 使用量计费。

误区二:Codex CLI 就是一个大模型

错误。Codex CLI 是 Agent 和工具运行环境,模型只是其中负责推理的一部分。

误区三:只要接口地址兼容,就一定能正常工作

错误。模型还需要具备工具调用、长上下文和稳定指令遵循能力,第三方接口也要兼容 Codex 使用的协议。

误区四:本地模型一定比云端模型慢

不一定。小模型在高性能本机上可能响应很快,但完成复杂工程任务的成功率通常比强大的云端 Agent 模型低。

误区五:Agent 可以不经检查直接操作生产环境

不建议。无论使用什么模型,都应限制文件、网络和命令权限,并对数据库、发布、删除等高风险操作保留人工审批。


十二、总结

Codex CLI 的价值,不只是“帮我们写代码”,而是把大模型放进真实的软件工程环境中,让它能够围绕代码库执行搜索、修改、测试和验证。

它把 Agent 框架与模型解耦:

<span leaf="">ounter(lineounter(lineounter(lineounter(lineounter(lineounter(<span>line</span></span>

这意味着,我们可以根据隐私、成本、硬件和任务难度自由选择“大脑”,同时保留相同的终端操作方式和 Agent 工作流程。

对于个人开发者,最简单的入门路径是先安装 Codex CLI,在本地使用 Ollama 跑通一个小项目;理解它如何读取文件、修改代码和执行测试后,再根据实际需要选择更强的模型。

未来真正改变编程方式的,也许不是某一个固定模型,而是这种“Agent 框架可以连接不同模型、工具和工作流”的新型开发模式。


参考资料

  • OpenAI Codex 开源项目

  • Codex CLI 命令参考

  • Codex 配置基础

  • Codex 自定义 Provider 与本地模型配置

  • Codex 身份认证

  • ChatGPT 支持的国家和地区

  • OpenAI API 支持的国家和地区

  • 非支持地区服务说明

注:Codex CLI、模型名称、功能与服务地区可能持续更新,实际使用时请以 OpenAI 最新官方文档及对应模型服务商条款为准。