国内很多人还在纠结"Claude Code 订阅太贵""Cursor 用量见底要不要续费",却漏掉一个公开但被严重低估的事实:OpenAI 的 Codex CLI 是个开源终端 Agent,只要你有一个 ChatGPT Plus($20/月)会员,登录就能跑,不用单独买 API key、不用按 token 计费。更狠的是,它藏了一堆国内几乎没人讲的暗门——能一键把 Claude Code 的配置整个"偷"过来、能变成管道命令在 CI 里当函数调、能强制输出结构化 JSON。这篇文章拆 7 个最高信息差的暗门,每个都附官方文档可查的真实命令,看完你手里的 ChatGPT 会员就多出一个能干活的 Agent。
打开 Codex CLI 第一屏,Sign in with ChatGPT 是官方推荐的登录方式。Plus、Pro、Business、Edu、Enterprise 任一档计划都能直接用。安装也极其丝滑:
# Mac / Linux 一行装好
curl -fsSL https://chatgpt.com/codex/install.sh | sh
# 或者 npm / Homebrew
npm install -g @openai/codex
brew install --cask codex
也就是说,你早就在付的那 20 刀 Plus,现在能再开出一个终端 Agent。对比 Claude Code 要 Claude Pro/Max 或 API、Cursor 要单独订阅,这笔账很划算。装完跑 codex,或装 IDE 扩展(VS Code / Cursor / Windsurf 都支持)即可。
/import 一键吞掉 Claude Code 配置这是我认为认知差最大的一条。Codex 内置了一条 /import 斜杠命令,官方说明原文是:Import Claude Code setup, project files, and recent chats——把 Claude Code 的配置、项目文件、近期对话,整批迁移进 Codex。
这意味着两件事:
CLAUDE.md、项目设置、最近聊的上下文,不用重头喂。操作:在 Codex 会话里敲 /import,跟着引导选来源即可。很多人卡在"迁移成本"不敢换工具,这条命令直接把成本归零。
codex exec 把 Agent 变成管道命令交互式 TUI 只是皮,codex exec 才是 Codex 的本体。它的设计天然为脚本和 CI 优化:
codex exec "generate release notes for the last 10 commits" | tee release-notes.md
curl -s https://jsonplaceholder.typicode.com/comments \
| codex exec "format the top 20 items into a markdown table" \
> table.md
--ephemeral:跑完不留 session 文件,CI 友好。这一条直接把"问 AI"从聊天框解放成 Unix 哲学里的一节管道——前面接 git log/jq/cat,后面接 grep/重定向。国内 90% 的用户只把 Codex 当聊天框用,完全没碰过这层。
--output-schema 强制输出结构化 JSON杀手锏级暗门。给 codex exec 一个 JSON Schema,它最终返回的就不是自然语言,而是严格符合 schema 的 JSON:
# schema.json 定义你要的字段
codex exec --output-schema schema.json "analyze this repo" > result.json
再配合 -o / --output-last-message <path> 把最终消息单独落盘。效果:Agent 直接变成一个可编程函数,返回值能被下游脚本/接口直接消费。做"代码风险报告""依赖审计""发布元数据生成"这类需要稳定字段的自动化流水线时,这是降维打击。这一招我几乎没见国内教程提过。
--json 流式监控 Agent 的每一步加 --json,stdout 变成 JSON Lines(JSONL)流,Codex 跑的每一件事都是一个事件对象,能被 jq 实时处理:
codex exec --json "summarize the repo structure" | jq
事件类型有 thread.started、turn.started、turn.completed、turn.failed、item.*、error;其中 item 细分为 agent_message、reasoning(推理过程)、command_execution(跑了什么命令)、file_change(改了哪些文件)、mcp_tool_call、web_search、plan_update。想在 CI 大屏上实时看 Agent 到底动了哪些文件、花了多少 token?这就是接口。token 用量在 turn.completed 的 usage 字段里,含 cached_input_tokens——缓存命中看得清清楚楚,优化账单有据可依。
granular 审批 + auto_review,告别逐条点同意默认 Codex 每跑一条命令都要你确认,长任务烦死人。config.toml 里藏了细粒度开关:
# 谁来审查:user(默认,要你点)| auto_review(自动审查员)
approvals_reviewer = "auto_review"
# 细粒度策略:只放开你信得过的几类
approval_policy = { granular = {
sandbox_approval = true,
rules = true,
mcp_elicitations = true,
request_permissions = false,
skill_approval = false
} }
auto_review 让一个审查员角色替你判断;granular 让你精确到"沙箱内命令放行、权限申请仍要问"。这一组配置是国内开发者最常踩的坑——很多人嫌 Codex 默认太啰嗦就弃用了,其实配两行就丝滑。沙箱强度另有一档:sandbox_mode 可选 read-only(默认)/workspace-write/danger-full-access。
/goal 持久目标 + /fork、/side 侧支长任务最容易跑偏。Codex 有一组会话管理命令:
/goal:给当前任务设一个持久目标(可 set/pause/resume/view/clear),Agent 会一直追着它走,不被中间问题带偏。/fork:把当前会话分叉成新线程,去试一条新思路,原始记录不丢。/side、/btw:开一条临时侧边对话,问个聚焦的小问题,不打乱主线 transcript。Tab:任务还在跑时敲一条 slash 命令,它会排队到下一轮执行——不用打断、不用等。这套组合让 Codex 的会话管理接近"多线程"思维,比把所有上下文糊在一个聊天框里干净得多。
config.toml 配置彩蛋 + /fast 服务层最后这几个藏在配置里的小机关,单看都不大,凑一起很省事:
notify:跑外部通知程序,长任务完成桌面弹窗:notify = ["notify-send", "Codex"]。file_opener:让 Codex 输出里的可点击引用跳进你常用的编辑器,支持 vscode / vscode-insiders / windsurf / cursor / none。默认是 vscode,用 Cursor 的人记得改成 cursor。commit_attribution:自定义 git 提交的 co-author trailer,默认是 Codex <[email protected]>,团队协作可改成自己。project_doc_fallback_filenames:当某个目录没有 AGENTS.md 时的回退文件名列表——你可以让 Codex 在缺 AGENTS.md 时自动读你的 README.md。model_instructions_file:用一个文件整体覆盖内置基础指令,深度定制 Agent 行为。/fast:模型目录里若有 Fast 服务层,一键切换,用速度换/换成本。/init:在当前目录一键生成 AGENTS.md 脚手架——而 AGENTS.md 已是跨工具标准(Cursor、Cline 等都认),写一次到处用。flowchart LR
A["git log / curl / jq<br/>上游命令"] -->|"stdin 上下文"| B["codex exec<br/>--sandbox workspace-write"]
B -->|"进度 stderr"| C["CI 日志大屏"]
B -->|"--json JSONL 流"| D["jq 实时监控<br/>token / file_change"]
B -->|"--output-schema"| E["结构化 JSON<br/>落盘 result.json"]
E --> F["下游脚本 / API 消费<br/>发布元数据·风险报告"]
G["/import 迁移<br/>Claude Code 配置"] -.-> B
H["ChatGPT Plus $20<br/>会员登录"] -.->|"无需 API key"| B
| 维度 | 你以为的 | 实际(别人在用的) |
|---|---|---|
| 费用 | Codex 要单独买 API key 按量计费 | ChatGPT Plus $20 会员登录即用 |
| 迁移 | 换工具要重头喂配置 | /import 一键吞掉 Claude Code 配置和聊天 |
| 用法 | 只能当聊天框 | codex exec 是管道命令,stderr/stdout 分离 |
| 输出 | 只能拿自然语言 | --output-schema 强制结构化 JSON |
| 监控 | 黑盒跑完看结果 | --json JSONL 流,token/文件改动实时可见 |
| 审批 | 默认逐条点同意很烦 | auto_review + granular 自动放行可信类 |
| 会话 | 上下文糊一个框 | /goal 持久目标 + /fork//side 分叉侧支 |
curl 装 Codex CLI,用 ChatGPT 会员登录,跑 codex。/import 把现有 Claude Code 配置搬过来;敲 /init 给主力项目生成 AGENTS.md。codex exec "..." 管道命令,把 git log 喂进去生成周报。--output-schema,在 CI 里把 Codex 当结构化函数调;同时把 config.toml 的 approvals_reviewer 设成 auto_review 解放双手。本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护。 聚焦5G/6G核心网、3GPP标准、AI工具实战。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
