阅读视图

发现新文章,点击刷新页面。

🤔 试试 OpenAI 的最强编程模型 "GPT-5-Codex"?

1. 引言

🐶 Cursor 近半年 "作妖不断" (各种变相涨价),20🔪的 Pro 越来越 "不耐用" 前阵子 "白嫖" 的三个月Pro,在我很 "节俭" 非重度使用的情况下 (尽量用临时免费的 grok-fast ,解决不了再Claude 4,还不行才 Claude 4🧠),结果两星期不到就蹬完了🤡,一个月两个 Pro 都不够用啊🤦‍♂️,还是得找下平替。

😶 CC (Claude Code) 刷屏好一阵子了,🤔 可能真的很强,但 200🔪/月的价格让大多数人望而却步 (5人车基本得350-400),毕竟杰哥的编码诉求并不是特别强烈 (😏花百来块买了一个月三方中转,后面也评测下)

💁‍♂️ Anthropic 最近也骚操作不断:模型降智、缩减用量、更严格的限制地区、极端反华言论,CC的信息流少了,反而频繁刷到 "Codex" (群里、小红书、公众号等),各种什么吊打 CC,性价比拉满啥的。🙉 杰哥一般是不主动尝鲜的,毕竟现在的AI工具太多了,根本试不完,之前火了一阵子的 Gemini CLI 到现在我都还没试过🤣。

💥 今早 OpenAI 发布新模型 GPT-5-Codex,这是其在GPT-5基础上专门为软件工程优化的模型版本,进一步提升了 Codex 中的智能体编程 (Agentic Coding) 能力。OpenAI在博客中提到,GPT-5-Codex的训练侧重于实际的软件工程工作,其可以根据任务动态调整思考时间,在大型复杂任务上能够 独立工作超过7个小时。同时在基准测试中,相比于GPT-5,GPT-5-Codex在多项基准测试中的 准确率、代码审查的高影响力评论概率 都实现提升。

😐 刚好看到L站有人 15出 GPT Plus 三个月兑换码 (虾皮活动、越南IP+绑卡、无质保),😀 原价20🔪/月,妥妥上车,直接 30块 淘了一个成品,早上没啥事,简单体验下是不是真如 "自媒体们" 吹的那么神~

2. 简介

Codex 早在 2021年 就存在了,不过当前AI编程还不火,OpenAI2025.5.16 正式推出 终端编程助手 Codex CLI,支持自然语言指令直接 生成/修改代码,并能 运行任务创建文件调用脚本 等。包含三个产品:Codex Cloud Agent (云端智能代理)、Codex CLI (终端命令行工具) 和 Codex VS Code 插件

【官方仓库】openai/codex

😄 开源,但 不免费

  • Plus30-150条/5h,有周额度限制 (🐶具体多少没公布),反正用超了就会提示等几天才能用。
  • Pro、Business300-1500条/5h,前者有周额度限制。L站很多这种 "Team一刀拼车",约10-15块/月,用量大的童鞋可自己检索,建议找有售后的 (失效了按天数退款) 😶。

Codex Cloud Agent 目前 "不限额度",账号需启用 MFA 认证,项目得同步到 Github 上,而且对 Codex 进行访问授权,然后就可以发布任务,等AI完成后,验收合并PR,把代码改动应用到本地了。

更多订阅信息相关可参见:《Using Codex with your ChatGPT plan》

3. Codex CLI

3.1. 安装配置

执行下述命令安装:

# 直接使用Nodejs的npm安装
npm install -g @openai/codex

# 如果你有在使用 Homebrew
brew install codex

# 验证
codex --version

安装完只需运行 codex 即可开始,但接着需要进行 "登录配置",根据自己的实际情况二选一:

3.1.1. ChatGPT 账号登录

选择 1. Sign in with ChatGPT 回车,会自动跳转网页进行登录认证

认证信息会保存在 ~/codex/auth.json 文件中:

接着可以通过 /model 命令切换不同版本的 GPT-5 模型,😄 按次数算,不是Token,妥妥切换到 high 啊:

3.1.2. 使用 API Key

没订阅 ChatGPT 但有 API KEY,只需创建一个 OPENAI_API_KEY 的环境变量:

export OPENAI_API_KEY="你的OpenAI Key"

第三方中转,则需要修改配置文件 ~/.codex/config.toml,以 packycode 中转为例:

model = "gpt-5"
model_provider = "packycode"
model_reasoning_effort = "high"
disable_response_storage = true


[model_providers.packycode]
name = "packycode"
base_url = "https://codex-api.packycode.com/v1"
wire_api = "responses"

然后 auth.json 文件的 OPENAI_API_KEY 需填入中转商提供的api密钥:

{
    "OPENAI_API_KEY": "sk-xxx"
}

重启终端,输入 codex 就可以玩耍了。

3.2. 基础使用

【官方仓库】openai/codex

3.2.1. CLI 常见命令

  • codex:启动交互式 TUI(文本用户界面),如:codex。
  • codex "..." :为交互式 TUI 提供初始提示,如:codex "fix lint errors"。
  • codex exec "..." :非交互式 "自动化模式",如:codex exec "explain utils.ts"。

💡 Tips--model/-m:指定模型类型、--ask-for-approval/-a:请求批准更改。

其它:

/mode    切换审批模式(Suggest/Auto Edit/Full Auto)
/model    切换AI模型和推理级别
/approvals    切换批准模式(Read Only/Auto/Full Access)
/init    创建AGENTS.md 文件,为 Codex 提供项目指令
/status    显示当前会话配置和令牌使用情况
/diff    显示 Git 差异(包括未跟踪文件)
/clear    清除会话历史
/prompts    显示示例提示
/help    显示帮助信息

3.2.2. 将 Prompt 作为输入

Codex 会根据 Prompt 生成相应的代码或执行任务,Codex 会在 沙盒环境中 生成文件,安装缺失的依赖项,并展示实时结果。你可以查看并批准这些更改,然后它们会被提交到你的工作目录。示例:

# Codex 会尝试解释整个代码库
codex "explain this codebase to me"

# Codex 会自动创建一个复杂的待办事项应用
codex --full-auto "create the fanciest todo-list app"

# Codex 会将类组件重构为 React Hooks,运行 npm test 并显示代码差异。
codex "Refactor the Dashboard component to React Hooks"

# Codex 会推测你的 ORM,创建迁移文件,并在沙盒数据库中运行这些迁移。
codex "Generate SQL migrations for adding a users table"

# Codex 会生成单元测试,执行这些测试,直到它们通过。
codex "Write unit tests for utils/date.ts"

# Codex 会安全地批量重命名文件,并更新所有相关的导入和使用。
codex "Bulk-rename *.jpeg -> *.jpg with git mv"

# Codex 会逐步解释正则表达式的含义。
codex "Explain what this regex does: ^(?=.*[A-Z]).{8,}$"

# Codex 会建议对当前代码库提出 3 个有影响力且范围明确的 PR。
codex "Carefully review this repo, and propose 3 high impact well-scoped PRs"

# Codex 会查找并解释安全漏洞。
codex "Look for vulnerabilities and create a security review report"

3.2.3. 编写 AGENTS.md

🤔 一种用于指导 AI 编程助手理解和操作代码库的标准化 Markdown 文件,类似于人类开发者使用的 README.md 文件,但专门为 AI 设计,提供机器可读的项目上下文和操作指令。其核心作用:

  • 提供项目上下文:描述项目结构、模块功能、依赖关系等,帮助 AI 理解代码库的组织方式。
  • 定义编码规范:列出命名约定、代码风格、注释规范等,确保 AI 生成的代码符合团队标准。
  • 指定构建与测试流程:提供构建、测试、CI/CD 等命令和流程,指导 AI 执行相关操作。
  • 设定安全与合规要求:强调安全实践、敏感数据处理、API 使用规范等,确保 AI 生成的代码符合安全标准。
  • 统一 AI 行为标准:为不同的 AI 工具(如 Cursor、Gemini CLI 等) 提供统一的指导,减少配置差异。

常见组成部分

  • 项目概述:简要介绍项目的目的、架构和主要模块。
  • 构建与测试:列出构建、测试和 CI/CD 的命令和流程。
  • 编码规范:定义命名约定、代码风格、注释规范等。
  • 安全与合规:强调安全实践、敏感数据处理、API 使用规范等。
  • 提交与 PR 指南:提供提交信息格式、 PR 审查流程等。
  • 环境与依赖:描述开发环境、依赖管理和配置要求。

简单示例:

# 项目概述

本项目是一个基于 React 和 Node.js 的 Web 应用,主要功能包括用户认证、数据展示和实时通知。

# 构建与测试

- 安装依赖:`npm install`
- 启动开发服务器:`npm run dev`
- 运行测试:`npm test`
- 构建生产版本:`npm run build`

# 编码规范

- 使用 TypeScript 严格模式
- 变量命名使用 camelCase
- 函数命名使用动词开头
- 组件命名使用 PascalCase
- 使用 ESLint 和 Prettier 进行代码格式化

# 安全与合规

- 所有数据库查询使用参数化语句,防止 SQL 注入
- 敏感信息使用环境变量管理
- API 密钥和令牌不应硬编码在代码中

# 提交与 PR 指南

- 提交信息格式:`[类型] 描述`
- 提交前运行 `npm run lint` 和 `npm test`
- PR 描述应包括变更的目的、影响和测试情况

# 环境与依赖

- 使用 Node.js 16.x 版本
- 使用 pnpm 作为包管理工具
- 使用 Docker 容器化开发环境

在大型项目或单体仓库 (monorepo) 中,可在 子项目或模块 的目录中放置局部的 AGENTS.md 文件,以覆盖或补充根目录中的指令。AI 工具会优先读取离当前操作目录最近的 AGENTS.md 文件,确保指令的针对性和准确性。三种不同层级的配置:

  • ~/.codex/AGENTS.md —— 全局个人配置
  • 项目根目录的 AGENTS.md —— 团队级共享说明
  • 当前工作目录的 AGENTS.md —— 子目录或功能模块专属配置

使用它的优势:

  • 提高代码质量:AI 生成的代码遵循项目的编码规范和最佳实践,减少了代码审查和重构的工作量。
  • 加速 AI 上手:AI 可以快速理解项目的结构和要求,提升开发效率。
  • 确保一致性:不同的 AI 工具遵循统一的指令,减少了配置差异带来的问题。
  • 降低开发成本:减少了因 AI 生成代码不符合要求而导致的返工和修正。

更详细的用法可参考:AGENTS.md

3.2.4. 小贴士 & 快捷键

使用 @ 进行文件搜索

在提示中输入 @ 即可触发模糊文件名搜索,使用上下方向键选择,Tab 或 Enter 确认,Esc 取消。

图片输入

可直接粘贴 (CV) 或通过 CLI 使用 -i/--image 参数附加图片:

codex -i screenshot.png "Explain this error"
codex --image img1.png,img2.jpg "Summarize these diagrams"

③ "回溯模式"

  • 当你在 Codex 的交互式界面中输入消息时,有时你可能想重新编辑之前的输入,或者修改某些已经提交的消息。按下 EscCodex 会进入回溯模式,显示上次输入的信息,你可以直接修改这条信息。如果想查看更早的消息,你可以 继续按Esc 键。每按一次,Codex 会将编辑器中的消息回退到你 之前 输入的消息。
  • 当你找到想要修改的消息后,你可以 按 Enter 键,Codex 会确认这条消息,并允许你在该点 分叉 对话。即从这条消息开始重新构建对话流程。另外,Codex 会 预填充 该消息内容在编辑框中,方便你进行编辑和修改,然后重新提交。
  • 好处:轻松回到之前的对话,并进行修改或扩展 Codex 给出的回复,而不是从头开始

3.2.5. 恢复交互式会话

如果你之前进行过一次交互式会话,并希望恢复,可以使用以下命令:

  • codex resume:显示会话选择器,允许你选择恢复的会话。
  • codex resume --last:恢复最近的一次会话。
  • codex resume <SESSION_ID> :通过会话 ID 恢复某个特定会话。你可以通过 /status 或 ~/.codex/sessions/ 获取会话 ID。

示例:

# 打开会话选择器
codex resume

# 恢复最近的会话
codex resume --last

# 通过会话 ID 恢复特定会话
codex resume 7f9f9a2e-1b3c-4c7a-9b0e-123456789abc

3.2.6. 为 Shell 环境配置自动补全

在终端中运行以下命令之一,根据你使用的 shell 环境生成补全脚本:

codex completion bash
codex completion zsh
codex completion fish

启用补全脚本后,后续使用 Codex 时,你可以 按 Tab 键 来自动补全你输入的命令、文件路径或参数。

3.2.7. --cd/-C 选项

在执行某些命令时,你可能需要进入到特定的目录进行操作,比如运行测试、生成代码等。使用 --cd 选项后,你可以 跳过进入目录的步骤,直接指定一个目录作为 当前的工作目录

3.2.8. 审批模式

Codex 提供了三种主要审批模式,用于控制其在本地文件系统和网络上的操作权限:

  • Auto-自动模式:默认模式。Codex 可以在工作目录内读取、编辑文件并执行命令,无需额外确认。如果尝试操作工作区之外的文件或访问网络,会向你请求审批。
  • Read Only-只读模式:适合纯对话或先制订计划时使用,Codex 只能读取文件,任何编辑、执行命令或网络请求都需审批。
  • Full Access-完全访问模式:无需审批即可读取、编辑文件并执行命令,且具有网络访问能力。风险较高,谨慎使用。

默认策略与推荐设置

  • 默认沙箱保护:Codex 启动时会在沙箱中运行,阻止对工作区外文件的修改,默认关闭网络访问。可通过命令 /status 查看当前沙箱中包含哪些路径。
  • 启动时推荐:如果当前文件夹在版本控制下(如 Git),推荐使用 Auto 模式。如果未检测到版本控制,推荐使用 Read Only 模式。
  • 工作区范围:默认为当前目录及其子目录,以及系统临时目录 (如 /tmp)。

你也可以在命令行中显式指定模式和审批策略:

codex --sandbox workspace-write --ask-for-approval on-request
codex --sandbox read-only       --ask-for-approval on-request

# 如果你希望 Codex 在任何操作时都不弹出审批提示
# 此参数可与任何 --sandbox 模式配合使用,Codex 会在所选沙箱策略下最大化自主运行。
--ask-for-approval never

常见组合示例

#【安全的只读浏览】仅可读取文件;对编辑、执行命令、网络请求均需审批。
--sandbox read-only --ask-for-approval on-request

#【CLI 管道只读】仅读取,无任何升权限审批请求,适合无交互自动化流程。
--sandbox read-only --ask-for-approval never

#【修改仓库,必要审核】可读写工作区并执行命令;对工作区外操作或网络访问请求审批。
-sandbox workspace-write --ask-for-approval on-request

#【自动化预设 (Auto模式)】在工作区内自动读写与执行命令;仅在沙箱操作失败或需要升权限时审批
--full-auto
# 等同于
--sandbox workspace-write + --ask-for-approval on-failure

#【YOLO模式-不推荐】取消沙箱限制、取消所有提示;最高风险。
--dangerously-bypass-approvals-and-sandbox
# 别名
--yolo

💡 注:在 workspace-write 模式下,网络访问默认仍被禁用。如需允许,请在配置文件中设置 [sandbox_workspace_write].network_access = true

~/.codex/config.toml 中进行全局细化设置:

# 默认模式设置
approval_policy = "untrusted"       # 操作失败时请求审批
sandbox_mode    = "read-only"       # 只读模式

# 全自动模式
approval_policy = "on-request"      # 每次操作前询问
sandbox_mode    = "workspace-write" # 工作区读写模式

# 允许网络访问
[sandbox_workspace_write]
network_access = true

# 你还可以保存不同的配置档 (Profile)
[profiles.full_auto]
approval_policy = "on-request"
sandbox_mode    = "workspace-write"

[profiles.readonly_quiet]
approval_policy = "never"
sandbox_mode    = "read-only"

# 加载配置档
codex --profile full_auto <command>

3.2.9. MCP

Codex CLI 支持 MCP,如果是配置"MCP客户端" ,需要打开用户主目录下的 ~/.codex/config.toml,添加 mcp_servers 区段:

[mcp_servers.example-server]
command = "npx"
args    = ["-y", "mcp-server"]
env     = { "API_KEY" = "your_api_key" }

也可作为 "MCP服务器" 运行,启用示例:

npx @modelcontextprotocol/inspector codex mcp

启动后,工具列表会包含两个工具:

codex: 新建或运行 Codex 会话,主要参数:

  • prompt (string, 必需):会话起始提示
  • approval-policy (string):命令审批策略,可选值 untrusted、on-failure、never
  • base-instructions (string):自定义初始指令,覆盖默认指令
  • config (object):覆盖 config.toml 中的单项设置
  • cwd (string):工作目录
  • include-plan-tool (boolean):是否在对话中包含“计划”工具
  • model (string):指定模型名称(如 o3、o4-mini)
  • profile (string):使用 config.toml 中的配置档
  • sandbox (string):沙箱模式,可选 read-only、workspace-write、danger-full-access

codex-reply:在已有会话中继续对话。

  • prompt (string, 必需):下一个用户提示
  • conversationId (string, 必需):要继续的会话 ID

4. Codex VS Code 插件

VS Code 插件市场直接搜 codex,没搜到搜 openai,进行安装:

安装完会出现在左侧边栏,😄 我是直接在Cursor上装的,补全还是用它,然后Chat用 Codex

审核选项:

  • approve once,只批准当前一次操作,适用于需要对每步改动严格把控时。
  • approve this session:批准本次会话所有操作,无需每次都人工确认。
  • reject:拒绝此次操作,Codex将不会执行当前提议的代码修改或命令。

🤔 如果用的三方中转,无法聊天,可以点击 vscode 的个人中心里面的设置,搜索 @ext:openai.chatgpt

点击在 settings.json 中编辑,在 json 最下面加上以下内容 (以具体中转平台文档为准):

"chatgpt.apiBase": "https://codex-api.packycode.com/v1",
"chatgpt.config": {
    "preferred_auth_method":"apikey",
    "model":"gpt-5",
    "model_reasoning_effort":"high",
    "wire_api":"responses"
}

保存之后重启 vscode,即可开始重新使用。打开设置还能开启类似于 CC TODO List 的 TODO comment

5. 小结

😶 习惯了图形化界面的 IDE,用起 CLI 来还是有点别扭的,插件倒是可以作为 Cursor Chat 的平替。感觉跟模型有关系,CodexClaude 4.0 那样说一堆废话来给你输出情绪价值,或者说着说着就开始原地拉💩 (写各种文档),Codex 就老老实实埋头干活,小步推进, 主打一个 "" 工出细活 (🐶是真的慢)。体验过程中遇到的三个主要问题:

① approve(审批)" 弹个不停

🤡 明明点了 approve this session,但还是要我每次确认,不知道是BUG还是啥...

② 中文乱码问题

有两种类型:"终端显示乱码" 和 "文件写入乱码",我轻度使用,目前只遇到前者:

搜了下,貌似是 Windows 平台的问题,把 PowerShellcmd 的编码全都改成 utf-8 就好了,用命令 "chcp 65001",否则默认是GBK编码。还有,在 CodexAGENTS.md 中写 Prompt 让它写代码使用 UTF-8

Codex 配置 MCP 的问题

😶 表现为:启动MCP服务超时/无法连接MPC服务),大部分反馈的用户都是 Windows,官方issues也有人在喷:

网上给出的一个解法是 "检查 nodejs 版本" 和 "pip 安装uv/uvx 包"。

① nodejs 的版本必须 20.x 以上的版本,低于这个版本很多 mcp 服务不兼容,可以键入 node -v 查看版本:

要进行版本升级的话,可以直接到官网下载安装新版安装包 (最简单),或者使用版本管理器 (nvm、fnm、volta 等) 进行版本切换。接着检查有没有安装 uv/uvx 的Python包,直接 pip install uv 进行安装 (我装过了):

uv 自带 uvx 了,不需要另外安装,你再安装是会报错的:

解释:PyPI 上的 uvx 现在只是一个 "占位" 包,里面没有任何代码,安装必然失败,真正提供 uvx 命令的是 uv 本身。如果你需要的是 "老第三方 uvx" (作者改名了),可以改成 pip install uvenv。🤡 但我安装完还是这样:

🤷‍♀️ 我用 Cursor 添加了一下其中一个MCP服务,明显起来了...

🙂 所以就是 codex 的锅,已经更到最新的0.36.0,还是这样:

😳 不会是需要自己传一个 env 参数吧?官方文档也没写啊:

搜了一圈 issues,在《MCPs do not work natively on Windows (Powershell)》发现了解决方法,添加 env 参数 (CoderPig 改为自己的电脑用户名):

env = { APPDATA = "C:\Users\CoderPig\AppData\Roaming", LOCALAPPDATA = "C:\Users\CoderPig\AppData\Local", HOME = "C:\Users\CoderPig", SystemRoot = "C:\Windows", ComSpec = "C:\Windows\System32\cmd.exe" }

修改后:

再次输入 /mcp,就好了,其它没配置的依旧失败:

🙂 坑,搞了一早上,然后可能因为今天刚宣发,体验的人多了,模型响应变得更慢的,而且有时卡在那里转半天不继续干活,真的垃 🤷‍♀️ ...

❌