你大概已经听说过 OpenAI Codex CLI——那个在终端里跑的AI编程助手。但你大概率只用了它最基础的功能:输入需求,等它改代码。事实上,Codex CLI 是一个被严重低估的"瑞士军刀":它能变身MCP服务器编排多Agent协作,能用Ollama跑本地模型实现零费用编码,能通过Skills系统把你的最佳实践变成可复用的"编程肌肉记忆"。今天这8个隐藏技巧,90%的Codex用户都不知道。读完这篇,你的Codex效率至少翻3倍。
/helpCodex CLI 内置了9个斜杠命令(Slash Commands),但大多数用户只知道输入/help看帮助文档。这些命令才是高频操作的关键加速器。
| 命令 | 功能 | 使用频率 | 你为什么需要它 |
|---|---|---|---|
/goal |
设定当前会话的长期目标,Codex会在整个对话中持续对齐 | ⭐极少人用 | 跑长任务时不跑偏 |
/compact |
压缩对话上下文,释放token空间 | ⭐⭐少数人用 | 对话太长导致质量下降时急救 |
/review |
让Codex审查当前代码变更 | ⭐⭐少数人用 | 替代手动code review |
/diff |
查看当前文件与初始状态的差异 | ⭐极少人用 | 快速确认改了什么 |
/clear |
清除当前对话历史 | ⭐⭐⭐常用 | 切换任务时重置 |
/model |
切换模型(如o3→gpt-5.5) | ⭐⭐少数人用 | 简单任务用便宜模型 |
/status |
查看当前会话状态和token用量 | ⭐极少人用 | 监控成本 |
/bug |
提交bug报告给OpenAI | ⭐极少人用 | 遇到问题直接反馈 |
/help |
查看帮助 | ⭐⭐⭐⭐都知道 | 基础功能 |
最被低估的组合技:在开始一个复杂任务时,先用/goal设定目标,比如:
/goal 重构用户认证模块,从JWT迁移到Session方案,保持API兼容性
然后Codex在整个对话过程中都会以这个目标为北极星,不会因为你的追问而跑偏。这个功能类似于给AI一个"项目管理文档",但90%的用户从未尝试过。
操作步骤:
1. 打开终端,进入项目目录,运行 codex
2. 在对话框中输入 /goal 你的长期目标描述
3. 后续所有对话都会自动对齐这个目标
4. 如果需要调整目标,再次输入 /goal 覆盖即可
这是Codex CLI最酷的隐藏能力——它不只是一个终端工具,还能作为MCP(Model Context Protocol)服务器运行,让其他AI Agent通过标准协议调用它。
这意味着什么?你可以用OpenAI Agents SDK创建一个"项目经理Agent",它自动调度Codex作为"编程Agent"来完成任务。整个流程完全自动化,不需要人工在终端里打字。
配置方法(在config.toml中):
[mcp_servers.codex]
command = "codex"
args = ["mcp"]
实际工作流:
flowchart LR
A[Agents SDK<br>编排器] -->|调用MCP工具| B[Codex MCP Server<br>编码Agent]
B -->|读取/写入| C[本地代码仓库]
A -->|调用MCP工具| D[另一个Codex实例<br>测试Agent]
D -->|运行测试| E[测试结果]
E -->|反馈| A
A -->|最终输出| F[完成的功能+通过的测试]
style A fill:#4f46e5,color:#fff
style B fill:#10b981,color:#fff
style D fill:#f59e0b,color:#fff
style F fill:#ef4444,color:#fff
为什么中国开发者应该关注:国内团队做多Agent编排时,通常需要自建复杂的通信机制。Codex的MCP Server模式提供了一种开箱即用的标准方案,一个配置文件就能让多个Codex实例协同工作。
操作步骤:
1. 确保Codex CLI已安装:npm install -g @openai/codex
2. 在项目中创建或编辑config.toml,添加MCP服务器配置
3. 在Agents SDK代码中,将Codex注册为一个MCP工具
4. 编排器自动分配任务给Codex,Codex返回执行结果
参考来源:OpenAI官方文档 - Use Codex with Agents SDK
你可能知道Claude Code用CLAUDE.md来定义项目指令,但Codex CLI的AGENTS.md有一个更强大的三层继承体系,国内几乎没人讲清楚。
三层结构如下:
| 层级 | 文件位置 | 作用范围 | 典型内容 |
|---|---|---|---|
| 全局层 | ~/.codex/AGENTS.md |
所有项目 | 你的编码风格偏好、通用规则 |
| 项目层 | 项目根目录/AGENTS.md |
当前项目 | 项目架构说明、技术栈约束 |
| 子目录层 | 子目录/AGENTS.md |
特定模块 | 模块专属的编码规范 |
关键区别:三层指令会智能合并,不是简单的覆盖。比如全局层说"使用TypeScript严格模式",项目层说"测试目录允许any类型",两者会同时生效,不会冲突。
实用场景:假设你同时维护5个项目,每个项目框架不同(React/Vue/Svelte),你可以在全局层定义通用的Git提交规范和代码风格,然后在各项目层定义框架特定的规则。
操作步骤:
1. 创建全局指令:mkdir -p ~/.codex && echo "你偏好使用函数式组件,禁止class组件" > ~/.codex/AGENTS.md
2. 创建项目指令:在项目根目录创建AGENTS.md,写入项目架构和约束
3. (可选)在特定子目录创建AGENTS.md,定义模块级规则
4. 运行codex,观察日志中是否正确加载了三层指令
参考来源:OpenAI Codex Setup Guide - AGENTS.md
Skills是Codex CLI的另一个被严重低估的功能。简单说,Skills就是可复用的Prompt模板+执行脚本,你可以把团队的编码规范、常用操作流程封装成一个Skill,团队成员一键调用。
Skill的文件结构:
.codex/skills/
├── review-security.md # 安全审查skill
├── gen-api-endpoint.md # API端点生成skill
└── fix-lint-errors.md # Lint错误修复skill
一个实际的安全审查Skill示例(.codex/skills/review-security.md):
---
name: review-security
description: 安全代码审查,检查SQL注入、XSS、认证漏洞
---
请对以下代码进行安全审查,重点关注:
1. SQL注入风险
2. XSS跨站脚本漏洞
3. 认证和授权绕过
4. 敏感数据泄露
5. 依赖库已知漏洞
输出格式:按严重程度(Critical/High/Medium/Low)分级列出问题。
调用方式:在Codex对话中直接输入/skill review-security即可。
团队共享方法:把.codex/skills/目录提交到Git仓库,整个团队都能用同一套Skill。这比在群里分享"最佳实践文档"高效100倍——因为Skill是可直接执行的,不是躺在Wiki里的死文档。
Codex CLI会自动保存每次会话的完整转录记录(JSONL格式),你可以随时恢复之前的会话,精确到上次中断的那句话。
核心命令:
# 恢复最近一次会话
codex resume --last
# 从历史列表中选择要恢复的会话
codex resume
# 查看指定会话的完整记录
codex resume --id <session-id>
转录文件存储位置:~/.codex/sessions/,每个会话是一个JSONL文件。
为什么这很重要:想象这个场景——你让Codex花20分钟重构了一个模块,第二天发现有个小问题需要微调。如果没有Session恢复,你需要重新描述整个上下文;有了它,直接codex resume --last,Codex完全记得昨天做了什么。
高级技巧:你可以手动编辑JSONL文件来"修改历史"。比如发现之前的某个指令写错了,直接编辑JSONL中对应的那行,然后恢复会话——Codex会按照"修正后"的历史继续工作。
参考来源:How to Resume a Codex CLI Session
这是中国开发者最应该知道的功能。Codex CLI不只能用OpenAI的付费模型,通过config.toml配置,你可以连接Ollama、LM Studio、OpenRouter甚至Azure上部署的任意模型。
连接Ollama本地模型(完全免费、完全离线):
# 一键启动(Ollama自动配置)
ollama launch codex
或者手动配置config.toml:
[provider]
name = "ollama"
base_url = "http://localhost:11434/v1"
[model]
name = "qwen3:32b" # 通义千问32B,中文编码能力极强
连接OpenRouter(按需付费,支持数百种模型):
[provider]
name = "openrouter"
base_url = "https://openrouter.ai/api/v1"
api_key = "sk-or-..."
[model]
name = "deepseek/deepseek-r1-0528" # DeepSeek R1,性价比之王
省钱计算:
| 方案 | 模型 | 月费用 | 适用场景 |
|---|---|---|---|
| OpenAI官方 | o3-pro | ~$200/月 | 复杂架构设计 |
| OpenRouter | DeepSeek R1 | ~$20/月 | 日常编码任务 |
| Ollama本地 | Qwen3-32B | $0(电费) | 离线/隐私敏感场景 |
注意:本地模型的编码能力取决于模型大小。建议至少使用32B参数以上的模型,否则体验会明显下降。如果你的机器有32GB以上内存,Qwen3-32B或DeepSeek-Coder-V2-Lite是不错的选择。
参考来源:Codex CLI Custom Model Providers Guide,Ollama Codex Integration
Codex CLI有三种审批模式和三种沙箱模式,大多数用户只会用默认设置,不知道可以根据任务风险级别灵活切换。
审批模式对比:
flowchart TD
A[Codex审批模式] --> B[suggest<br>只建议不修改]
A --> C[auto-edit<br>自动编辑文件<br>执行命令需确认]
A --> D[full-auto<br>全自动执行<br>包括运行命令]
B --> B1[风险: ★☆☆<br>适合: 代码审查]
C --> C1[风险: ★★☆<br>适合: 日常开发]
D --> D1[风险: ★★★<br>适合: CI/CD自动化]
E[沙箱模式] --> F[network-read-only<br>只读网络,默认]
E --> G[network-full<br>允许网络访问]
E --> H[danger-full-access<br>完全访问系统]
F --> F1[安全: ★★★<br>适合: 一般编码]
G --> G1[安全: ★★☆<br>适合: 需要下载依赖]
H --> H1[安全: ★☆☆<br>适合: Docker操作]
style D fill:#ef4444,color:#fff
style H fill:#ef4444,color:#fff
实用组合建议:
| 任务类型 | 审批模式 | 沙箱模式 | 启动命令 |
|---|---|---|---|
| 代码审查 | suggest | network-read-only | codex --approval-mode suggest |
| 日常开发 | auto-edit | network-read-only | codex(默认) |
| 安装依赖 | auto-edit | network-full | codex --sandbox network-full |
| Docker操作 | full-auto | danger-full-access | codex --full-auto --sandbox danger-full-access |
隐藏技巧:你可以在AGENTS.md中为不同目录设置不同的审批策略。比如在src/目录用auto-edit,在infra/目录用suggest,防止Codex误改基础设施代码。
参考来源:Agent Approvals & Security - OpenAI Developers
Codex CLI不只是交互式工具,它还有一个非交互模式(Quiet Mode),可以直接嵌入CI/CD流水线,实现自动化代码审查、自动修复Lint错误、自动生成测试。
基本用法:
# 非交互模式执行单次任务
codex -q "审查 src/auth.ts 中的安全问题"
# 指定审批模式(必须指定,否则会卡住等输入)
codex -q --approval-mode full-auto "修复所有ESLint错误"
# 输出JSON格式结果
codex -q --format json "生成 user.service.ts 的单元测试"
GitHub Actions集成示例:
name: AI Code Review
on: [pull_request]
jobs:
review:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Codex
run: npm install -g @openai/codex
- name: AI Review
env:
OPENAI_API_KEY: ${{ secrets.OPENAI_API_KEY }}
run: |
codex -q --approval-mode suggest \
"审查本次PR的代码变更,重点关注安全漏洞和性能问题" \
> review_output.md
- name: Post Review Comment
uses: actions/github-script@v7
with:
script: |
const fs = require('fs');
const review = fs.readFileSync('review_output.md', 'utf8');
github.rest.issues.createComment({
owner: context.repo.owner,
repo: context.repo.repo,
issue_number: context.issue.number,
body: review
});
这个技巧的价值:把Codex嵌入CI后,每个PR都会自动获得AI审查意见。对于没有专职代码审查人员的小团队来说,这相当于免费获得了一个7×24小时的高级工程师做代码审查。
| 你知道的 | 你不知道的(读完这篇后) |
|---|---|
| Codex是在终端里聊天的AI | /goal命令可以让Codex在长任务中不跑偏 |
| Codex只能用OpenAI的模型 | 通过config.toml可以连接Ollama/Qwen3,零费用离线编码 |
| Codex是一个独立工具 | 它可以变身MCP服务器,多Agent协同完成复杂任务 |
| AGENTS.md就是一个配置文件 | 它有三层继承体系,支持全局→项目→模块的智能合并 |
| Codex只能交互式使用 | 非交互模式可以嵌入GitHub Actions做自动代码审查 |
| 审批模式只有开/关 | 三种审批模式×三种沙箱模式=9种安全级别组合 |
| Skill就是高级Prompt | Skill可以版本控制、团队共享、一键调用 |
| 对话结束就没了 | Session Resume可以精确恢复到上次中断位置 |
~/.codex/AGENTS.md全局指令文件,写入你的编码偏好config.toml连接Ollama + Qwen3-32B,搭建零费用的本地AI编码环境安装命令:
# 安装Codex CLI
npm install -g @openai/codex
# 验证安装
codex --version
# 快速开始
codex "帮我分析这个项目的架构"
本文由「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 等场景全覆盖。
