你可能只用了 Codex 20% 的能力。
大多数开发者和 Codex 的交互模式是:打开对话 → 丢一段需求 → 拿到代码 → 提 PR。这没问题,但如果你以为 Codex 只能干这个,那你可能错过了 80% 的生产力。
Codex 官方团队成员 jason (@jxnlco) 最近分享了一套高阶用法。核心观点:凡是能在终端执行的操作、在浏览器里完成的审查、通过 API 调用的服务——都属于 Codex 的能力范围。它早已不是一个狭义的编程助手。
下面是 7 个你应该立刻开始用的高阶功能。每个都附带具体操作步骤。

1. 持久对话流:不要每次都从零开始
问题:你每次打开 Codex 都要从头解释项目背景、技术栈偏好、当前进度?
解法:使用持久对话流(Durable Threads),然后把它置顶(Pinned Threads)。
持久对话流的核心价值是上下文积累。Codex 会记住你之前做过的决定、你的偏好、当前进度。你不需要每次都重新喂一遍背景信息。
Codex 桌面版操作步骤
- 在 Codex 桌面应用中开始一个新对话(Thread),给它一个有意义的名称(比如“日常管家”或“产品发布”)
- 在侧边栏中悬停该线程,点击三个点菜单,选择 Pin Conversation(置顶对话)
- 置顶后,使用快捷键 Command-1 到 Command-9(macOS)或 Ctrl-1 到 Ctrl-9(Windows)一键跳回
- 当线程变长时,Codex 会自动进行上下文压缩,保留关键信息而不会超出 token 限制
- 完成的线程可以归档保存,需要时从归档中恢复
Codex CLI 操作步骤
# 恢复最近一次对话
codex resume --last
# 显示对话选择器,选择要恢复的线程
codex resume
在 CLI 会话中,也可以使用斜杠命令:
/resume # 选择一个已保存的会话继续
/fork # 克隆当前对话到新线程(用于并行探索不同方案)
/side # 从当前对话开一个临时分支,不离开主任务
/new # 开始全新对话
/compact # 压缩长对话,释放上下文空间
推荐置顶的对话流配置
| 对话流名称 | 用途 | 快捷键建议 |
|---|---|---|
| “日常管家” | 处理杂务:issue 分流、消息摘要、日报 | Command-1 |
| “产品发布” | 专门推进发布流程 | Command-2 |
| “代码审查” | 审查和迭代代码 | Command-3 |
| “文档” | 审查和撰写文档 | Command-4 |
| “数据看板” | 盯着外部数据源变化 | Command-5 |
注意:这些不是聊完即焚的对话框,而是持续演化的工作空间。你在里面做的每个决定、每条偏好,Codex 都会积累下来。
2. 语音输入 + 任务干预:边想边指挥
语音输入
语音输入不是噱头,而是捕捉粗糙想法的最佳工具。当你脑子里有个大概的想法但还没完全成型时,花两三分钟“碎碎念”比打字写一段精心组织的文字更有效——未经修饰的口述保留了你的犹豫、强调和灵光一现。
Codex App 中的操作方法:
- 在输入框可见时,点击麦克风图标 开始说话
- 口述你的需求,不需要组织语言
- Codex 会实时转录你的语音为文本
- 编辑转录内容(或直接发送让 Codex 开始工作)
典型用法:
“上次 review 的时候有人提过一个关于并发的问题,具体内容我记不太清了,你帮我在项目历史里翻翻看。”
模糊、口语化、缺乏精确关键词——这正是语音输入的强项。打字时你会纠结措辞,但口头表达反而更自然,Codex 会自动搜索相关上下文并整理给你。
任务干预(Steering):中途纠偏
操作方法:当 Codex 正在执行任务时,输入你的纠正指令,然后按 Enter。Codex 会把新指令注入当前正在执行的轮次,立即改变方向。
适用场景:发现 AI 跑偏了,需要在它浪费更多时间之前纠正。
使用例子(Codex 正在审查 UI 时,你中途插入):
- “导航栏的高度太高了,减到 60px”
- “这边的错误提示文案换成英文”
- “跳过这一段,先处理下面的表单校验逻辑”
任务排队(Queuing):安排下一个任务
操作方法:在任务执行过程中,输入你的下一条指令,然后按 Tab(不是 Enter)。该指令会被排队,等当前轮次完成后自动执行。
[输入框] 跑一下全量回归测试,把结果贴到 PR 评论里。
[按 Tab 排队 → 当前任务完成后自动执行]
排队支持的内容:普通提示词、斜杠命令(如 /review)、Shell 命令(以 ! 开头)。
一句话区分:按 Enter = 中途打断当前任务;按 Tab = 排队等当前任务做完后再执行。
3. 让 Codex 的手伸向代码库之外
Codex 的触角可以向外层层延伸,而不是被困在终端里。
侧边栏浏览器(In-app Browser)
操作方法:
- 在 Codex App 中,让 Codex 打开一个网页:
帮我打开 https://example.com 看看布局 - Codex 会在侧边栏中打开该网页
- 你可以在网页上直接标注需要修改的地方
- Codex 会响应你的标注并修改
适合:审查网页设计、检查 UI 布局
Chrome 扩展
操作方法:
- 安装 Codex Chrome 扩展
- Codex 可以获取你浏览器的登录状态,用来处理需要身份验证的工作流
- 比如让 Codex 帮你在已登录的内部管理系统中抓取数据
适合:需要登录态的浏览器内工作
Computer-use(桌面 GUI 操控)
注意:目前仅限 macOS,且需要额外安装和权限配置。
操作方法:
- 在 Codex App 中进入 Settings → Computer Use → Install 安装插件
- 当 macOS 弹出权限请求时,授予屏幕录制和辅助功能权限
- 在提示中使用
@Computer或@应用名触发(如@Chrome 打开这个页面截图看看) - Codex 会直接操控桌面图形界面(点击、输入、拖拽)
适合:只能通过桌面 GUI 完成的任务(比如在无 API 的应用中上传文件、复现只在图形界面出现的 Bug)
三层能力对比
| 层级 | 能力 | 启用方式 | 适合场景 |
|---|---|---|---|
| 应用内浏览器 | 侧边栏审查网页并做标记 | App 内置 | 审查网页设计、检查 UI |
| Chrome 连接 | 获取浏览器登录状态 | 安装 Chrome 扩展 | 需要身份验证的浏览器内工作流 |
| Computer-use | 操控桌面 GUI | Settings → Computer Use → Install(仅 macOS) | 只能通过 GUI 完成的任务 |

MCP 服务器配置
MCP(Model Context Protocol)让 Codex 能接入 Slack、Gmail、Figma 等外部服务。
Codex App 中的操作步骤:
- 点击左下角的 Settings(设置)齿轮图标
- 进入 MCP Servers
- 你会看到一些可以直接认证并使用的内置服务器
- 或者点击 “Add Server” 添加自定义 MCP 服务器
- 选择传输方式:STDIO 或 Streamable HTTP
- 填入服务器配置信息
- 完成
CLI 中的操作步骤:
在 config.toml 中配置 MCP 服务器:
[mcp_servers.my-server]
command = "node"
args = ["path/to/server.js"]
配置完成后,使用 /mcp 命令验证:
/mcp # 列出所有可用的 MCP 工具
/mcp verbose # 显示详细的服务器诊断信息
Skills(技能封装)
一旦某个工作流被证明好用,把它封装成技能。在 Codex 中使用 /skills 命令选择和应用技能。Codex 会直接加载技能的完整指令,下次不需要从头学起。
/skills # 选择一个已安装的技能来应用
4. 你离开电脑,它继续干活
这是 Codex 最被低估的能力之一。你在 Mac 上启动一个任务,然后离开工位。在手机上随时查看进度、回复它的问题、批准下一步操作。
在 Codex App 中设置自动化
- 打开 Codex App
- 进入 Automations(自动化) 设置页面
- 选择创建新自动化
两种自动化模式对比
| 模式 | 特点 | 适合场景 |
|---|---|---|
| 定时自动化 (Scheduled) | 每次从零开始,独立运行 | 生成日报、例行检查代码库 |
| 对话流自动化 (Thread) | 带历史记忆,像心跳一样定期回到同一个对话流 | 需要在同一上下文中持续推进的工作 |
实战配置——“日常管家”对话流每 30 分钟自动跑一次:
在 Thread Automation 中设置:
- 目标对话流:你的“管家”线程
- 频率:每 30 分钟
- 执行指令:
检查 GitHub 上我负责的 repo 有没有新的 issue 或 PR 评论。
如果有,帮我分类:哪些需要我亲自回复,哪些可以自动 assign 给对应模块的负责人。
把分类结果整理成一份简要清单,等回来时直接看。
你回到电脑前时,筛选和分类的工作已经完成。你只需要处理真正需要人工决策的部分。
反馈循环闭环
对话流自动化特别适合处理“反馈循环”——你的 AI 可以在你不在的时候持续跟进:
- 你在 GitHub PR 里收到一条代码审查意见后离开工位
- 自动化定时检查该 PR 的新评论
- 检测到修改意见 → 自动调整代码并推送新 commit
- 推送完回复评论说明改了什么
- 如果需要跑 CI 但接口受限 → 调用 Computer-use 打开浏览器手动触发
从接收反馈、修改代码到回复评论,整个闭环不需要你在场。

5. 给 Codex 一条终点线:目标设定与验证器
使用 /goal 命令(实验性功能)
/goal是 Codex 的实验性功能,默认关闭。需要在 CLI 中输入/experimental启用 Goals,或在~/.codex/config.toml中添加:[features] goals = true
启用后,使用 /goal 命令启动一个自主执行的长任务:
/goal 将 src/api/ 下所有 REST 接口迁移到 GraphQL,使用现有 Apollo Server 配置。原有测试全部通过才算完成。
Codex 会:
- 制定计划
- 自动执行(写代码、跑测试、修 Bug)
- 遇到错误时自我修复
- 一直循环直到目标达成
常用子命令:/goal(查看当前目标)、/goal pause(暂停)、/goal resume(恢复)、/goal clear(清除)
糟糕的目标 vs 好的目标
糟糕的目标:
重构一下认证模块,代码质量提升一些。
“质量提升”无法量化,Codex 不知道什么时候算达标。
好的目标:
将 auth 模块的 API 响应时间降到 50ms 以下,同时保持所有现有测试通过。以
npm run benchmark:auth的输出作为验证依据。
终点线清晰,验证方式明确。
Goals 的核心逻辑
目标设定 = 持续执行 + 验证器。
你来定义三件事:
- 想要的结果
- 何时停止的条件
- 判断 Codex 有没有离终点更近的信号

5 种可用的验证器
| 验证器 | 配置方式 | 适用场景 |
|---|---|---|
| 完整的测试用例 | 运行 pytest 全部通过 |
功能迁移、代码重构 |
| 基准性能测试 | benchmark 响应时间 < 200ms |
性能优化任务 |
| 能稳定复现的 Bug | 运行 reproduce.sh 不再出现 error |
Bug 修复任务 |
| 验证矩阵 | 通过所有检查清单项目 |
多维度验收 |
| 端到端工作流 | e2e test 全部绿色 |
整体系统集成 |
长任务安全设置
务必在独立 Git 分支上运行 /goal:
git checkout -b codex/api-refactor
/goal Refactor API layer...
如果 Codex 跑偏了,直接丢弃分支重来,主分支不受影响。
也可以开启 full-auto 模式并记录日志:
codex --approval-mode full-auto 2>&1 | tee codex-session.log
一句话总结:没有验证机制的目标不是目标,是许愿。
6. 侧边栏:边看边改,不用导出
侧边栏的最大价值是消除上下文切换。无论 Codex 生成了什么——代码、幻灯片、PDF、数据表——都直接在聊天窗口旁边打开,不用导出来回切换。
日常操作
- Codex 生成文件后,点击预览即可在侧边栏打开
- 直接在文件上标注需要修改的地方
- Codex 根据标注原地修改,文件实时更新
- 用
/diff命令可以随时查看当前所有变更
配合内置浏览器的迭代工作流
前面提到的侧边栏浏览器,和文件审查结合起来特别强大:
- Codex 生成了一个静态页面 → 侧边栏里打开预览 → 你标注问题 → Codex 修 Bug → 原地刷新 → 继续迭代
- 不需要搭服务器,一个
index.html就能跑起来 - 配合对话流自动化,Codex 还能在你离开时持续更新这些文件
适合侧边栏审查的典型产物
| 产物类型 | 审查方式 |
|---|---|
| 代码文件 | 查看 diff、标注逻辑问题 |
| 幻灯片 / PDF | 直接翻页预览,标注文案修改 |
| 数据表格 | 原地检查数据,标记异常值 |
| 网页 / 组件 | 内置浏览器渲染,标注 UI 问题 |
| Markdown 文档 | 原地阅读,标记措辞修改 |
7. 共享记忆:别让上下文断在两次聊天之间
持久对话流解决了一次聊天内的上下文问题。但跨聊天的上下文怎么办?
方案一:使用 /init 生成 AGENTS.md
Codex CLI 内置了一个命令,可以自动生成 AGENTS.md 模板:
/init # 在当前目录生成 AGENTS.md 脚手架
- 在项目根目录运行
/init - Codex 会生成一个
AGENTS.md脚手架 - 编辑它,加入你的项目规范、偏好和约定
- 提交到 Git,这样所有协作者和 Codex 都能看到
方案二:Obsidian 知识库 + AGENTS.md
对于更复杂的长期项目,建立一个纯文本文件夹作为长期工作记忆区:
codex-vault/
├── AGENTS.md ← 给 Codex 定的工作规矩
├── backlog.md ← 当前迭代要做什么
├── decisions/ ← 重要技术决策和原因
├── team/ ← 团队成员信息和职责范围
└── daily/ ← 每日工作摘要(自动更新)
在 AGENTS.md 中给 Codex 定规矩:
# 工作规则
- `codex-vault/` 是你长期的工作记忆区,每次对话开始时先看一遍
- 收到新信息时,分类存到对应子目录,不要全部堆在一个文件里
- 记录技术决策时,必须包含:做了什么选择、为什么、还有哪些备选方案被否决了
- 如果没有实际进展,不要为了"显得在干活"而修改文件
方案三:Codex 内置记忆功能
Codex 还有两个内置的记忆辅助功能:
官方记忆(Settings → Personalization → Memory):
- 系统自带的本地记事本
- 记住偏好、常用流程、常见坑
- 使用
/memories命令管理
/memories # 选择是否使用现有记忆、生成新记忆、或禁用记忆
截图记忆:
- 从你最近屏幕上的内容中提取并构建记忆
- 自动运行,无需手动操作
关键区分
| 代码库 | 知识库 | |
|---|---|---|
| 存什么 | 代码 | 滚动更新的上下文 |
| 包含 | 函数、类、配置 | 人、变更、卡点、跟进、容易消失的细节 |
| 工具 | Git | Obsidian + 云同步 |
核心原则:上下文是 AI 协作中最容易被忽视、也最昂贵的资产。把它持久化下来,比每次重新解释要划算得多。
检查清单:你现在能用上哪些?
对照这个清单,逐项操作:
- 置顶对话流:在 Codex App 中右键线程 → Pin,试试 Command-1 快速跳转
- CLI 恢复对话:运行
codex resume或在会话中输入/resume - 语音输入:点击输入框旁的麦克风图标,试试口述一个模糊需求
- 任务干预:下次任务执行时,直接输入纠正指令
- 任务排队:试试输入“等这活儿干完之后……”
- 接入 MCP:Settings → MCP Servers → Add Server,先接入一个 Slack 或 Gmail
- 验证 MCP:运行
/mcp确认工具已加载 - 设置自动化:在 Automations 中为你最常用的线程设一个定时心跳
- 运行 /goal(实验性):先通过
/experimental启用 Goals,然后在独立 Git 分支上给 Codex 一个带验证器的目标 - 审查文件:下次 Codex 生成文件时,在侧边栏中打开并标注
- 生成 AGENTS.md:在项目根目录运行
/init - 管理记忆:运行
/memories检查记忆设置
建议起步:从第 1 项(置顶持久对话流)和第 11 项(/init 生成 AGENTS.md)开始。有了持久上下文和项目规范,后面所有高阶功能才有意义。
Codex 的设计意图从来不只是“帮你写代码”。它要的是:从听取指令、执行任务,一直到最终文件审查,扛起一个完整的工作流。哪怕这些工作早已超出代码库的范畴。
