Codex CLI 的“命令”实际分为三类:在 shell 中运行的子命令、启动时附加的全局参数,以及终端交互界面中的斜杠命令。把三者混在一起,最常见的结果就是在错误位置输入命令,或误以为一次性参数会永久修改配置。

本文按真实任务整理常用入口,并把权限与危险参数单独说明。命令和可用功能会随版本变化;本文已在 2026-08-27 对照 OpenAI 官方 Codex CLI 页面和开发者命令参考核验,实际使用时仍应以当前 codex --help 与官方页面为准。

先区分三类命令

类型输入位置示例适合用途
CLI 子命令普通 shellcodex login status登录、恢复会话、审查、自动化与诊断
全局参数codex 或子命令之后codex --cd apps/site为本次运行选择目录、沙盒、审批或模型
斜杠命令Codex 交互界面/status在当前会话中查看或调整状态

如果不确定当前版本支持什么,先执行:

codex --help
codex exec --help

帮助输出比旧文章或截图更可靠。不要仅凭记忆使用危险参数,也不要把其他 OpenAI 命令行工具的语法套到 Codex CLI。

启动交互界面并限定工作目录

在项目目录中运行 codex 会启动终端交互界面:

cd /path/to/project
codex

也可以通过 --cd(短参数为 -C)显式设置工作目录:

codex --cd /path/to/project

路径只是示例,执行前应确认它指向预期仓库。OpenAI 当前参考还列出 --add-dir,用于在主工作区之外增加可写目录。只有任务确实需要时才应扩大范围,不要为了减少提示直接授予整个上级目录。

对于普通本地工作,官方参考给出的低摩擦组合是:

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

这组参数只影响本次启动。要保存长期默认值,应单独审查 config.toml;不要把一次性命令误认为永久配置。

登录、检查状态与退出登录

常用认证入口如下:

codex login
codex login status
codex logout

codex login 启动登录流程,codex login status 输出当前认证模式,并在存在凭证时以成功状态结束;codex logout 移除已保存的 ChatGPT 与 API key 认证凭证。

官方参考也提供从标准输入读取 API key 或 access token 的方式。凭证不应直接出现在命令历史、脚本参数、截图或文章示例中。自动化环境应使用受控的秘密管理和最小权限,而不是把密钥写进仓库中的 .env 范例。

恢复、分叉和整理会话

要继续历史会话,可使用:

codex resume
codex resume --last

resume 适合延续原任务和上下文。如果你需要从某个已有会话探索另一种方案,同时保留原来的对话线索,可使用 codex fork。恢复和分叉不是同一件事:前者继续,后者创建新分支。

在交互界面里,/rename 可以给当前会话命名,/archive 会归档并退出,/delete 则永久删除当前会话及其后代。归档与删除的恢复能力不同,删除前要确认目标和影响范围。

在会话中检查状态和权限

进入终端交互界面后,最值得先记住的是:

/status
/permissions

/status 用来查看当前会话配置,例如活动模型、审批策略、可写范围和令牌使用情况。/permissions 用来调整 Codex 无需再次询问即可执行的操作。开始新仓库、切换目录或发现命令行为与预期不一致时,先检查状态,再决定是否扩大权限。

/model 用于切换当前会话模型,/compact 会压缩较长的对话以释放上下文空间。模型、推理选项和功能可用性可能因版本、账号或环境而不同,应从当前斜杠菜单选择,而不是依赖文章中的固定默认值。

审查改动与查看差异

在交互界面中使用:

/review
/diff

/review 可引导工作树审查,/diff 便于查看精确文件差异。shell 中的 codex review 则可非交互审查未提交改动、基础分支差异、某个提交或自定义审查要求。

自动审查结果仍需与真实 Git 差异、测试输出和项目规则核对。尤其要确认没有覆盖任务前的用户改动,没有把凭证或生成文件纳入提交,也没有把未执行的检查写成“已通过”。

使用 codex exec 运行非交互任务

codex exec(短形式 codex e)适合脚本或 CI 中需要执行完即退出的任务:

codex exec --cd /path/to/project "Read the repository instructions and report the validation commands. Do not modify files."

提示也可以从标准输入读取。当前官方参考提供 --json 输出逐行 JSON 事件,以及 --output-last-message 把最终回答写入指定文件。需要让下游程序消费结果时,可配合 --output-schema 约束最终输出结构。

非交互不等于无需边界。应显式选择合适的 --sandbox,在 CI 中使用最小凭证,并让失败状态阻止后续发布。官方参考标记 --dangerously-bypass-approvals-and-sandbox(别名 --yolo)为危险选项,只适用于已由外部环境隔离的运行器;它不应成为本地或共享构建机的默认命令。

常用交互快捷方式

除了斜杠命令,当前官方参考记录了几种高频操作:

  • 输入 @ 搜索工作区文件并把路径加入提示;
  • 使用 Ctrl + R 搜索提示历史;
  • 使用 Ctrl + O/copy 复制最近一次已完成的输出;
  • 在一行开头输入 !,按当前沙盒与审批设置运行本地 shell 命令;
  • Codex 工作时按 Tab,把跟进提示或命令排到下一轮;
  • 工作时按 Enter,把新说明注入当前轮;
  • 使用 /exitCtrl + C 退出会话。

! 并不会绕过权限。它只是从交互界面发起本地命令,仍应先核对工作目录、参数和影响范围。

诊断、更新和功能状态

当前官方命令参考把以下命令列为稳定入口:

codex doctor
codex features list
codex update

codex doctor 生成安装、配置、认证、运行时、Git、终端和会话等诊断报告;使用 --json 时会输出经过处理的机器可读支持报告。即使如此,分享诊断文件前仍应检查本地路径和项目上下文。

codex features list 展示已知功能、成熟度和当前有效状态。codex update 仅在当前安装版本支持自更新时检查并应用更新。安装渠道不同,更新方式也可能不同,因此出错时应回到官方 CLI 页面确认。

按任务选择命令

目标建议入口先检查什么
第一次进入项目codex --cd <path>目录、Git 状态、AGENTS.md
确认登录codex login status认证模式,不输出凭证
查看当前边界/status/permissions可写目录、审批、沙盒
继续上次任务codex resume --last是否确实是同一项目与目标
分支探索方案codex fork是否需要保留原会话
审查工作树/review/diff真实差异和测试结果
脚本化只读任务codex exec --sandbox read-only输入、退出状态、输出格式
排查环境问题codex doctor报告中是否有敏感信息

如果项目需要固定的构建和验收规则,先阅读 AGENTS.md 指南;若尚未完成安装和首次登录,请从 Codex CLI 安装教程 开始。

常见问题

/statuscodex login status 有什么区别?

/status 在交互会话中查看模型、权限与工作区等运行状态;codex login status 在 shell 中检查认证模式。两者解决的问题不同。

全局参数会永久修改 config.toml 吗?

通常不会。--cd--sandbox--ask-for-approval-c key=value 用于当前调用。需要持久化时,应使用官方配置机制并审查改动。

可以在 CI 中直接使用 —yolo 吗?

不应默认使用。官方参考只建议在已经隔离的运行器中考虑危险绕过选项。更安全的做法是选择合适沙盒、限制写入目录和网络、使用最小权限凭证,并保留人工发布门禁。

斜杠命令在所有版本中都一样吗?

不一定。命令可能受版本、平台、账号或功能成熟度影响。进入当前终端界面输入 /,以实际菜单和官方命令参考为准。