codex cli初体验
2026-07-27
codex安装、配置、使用备忘
1. 安装与登录
# 使用 npm 安装:
npm install -g @openai/codex
# 检查是否安装成功:
codex --version
# 登录:
codex login
codex login --device-auth # 如果是在远程服务器没用ui的情况登陆
# 完全权限执行
codex --dangerously-bypass-approvals-and-sandbox
2. 最常用的启动方式
# 进入项目目录后启动交互界面:
cd /path/to/project
codex
# 直接附带任务:
codex "分析这个项目的结构,并告诉我如何启动"
# 指定工作目录:
codex -C /path/to/project
3. 非交互执行
# 适合脚本和 CI:
codex exec "运行测试,定位失败原因并给出修复建议"
4. 代码审查
codex review
# 也可以附带审查要求:
codex review "重点检查安全漏洞、并发问题和破坏性 API 变更"
5. 恢复历史会话
# 打开会话选择器:
codex resume
# 继续最近一次会话:
codex resume --last
从已有会话创建新分支:
codex fork
codex fork --last
6. 模型、图片和联网搜索
# 指定模型:
codex -m MODEL_NAME
7. 沙箱与审批
# 只读模式,适合分析和审查:
codex -s read-only
# 允许修改当前工作区:
codex -s workspace-write
# 完全访问模式风险较高:
codex -s danger-full-access
# 审批策略:
codex -a untrusted
codex -a on-request
codex -a never
一般建议:
codex -s workspace-write -a on-request
谨慎使用以下选项,它会绕过审批和沙箱:
codex --dangerously-bypass-approvals-and-sandbox
只应在外层已经有可靠隔离的临时环境中使用。
8. 配置文件
全局配置通常位于:
~/.codex/config.toml
9. 项目级指令:AGENTS.md
可以在仓库根目录添加 AGENTS.md,告诉 Codex 项目的长期约定:
10. MCP 与插件
# 管理外部 MCP 服务:
codex mcp --help
# 管理 Codex 插件:
codex plugin --help
# 生成终端自动补全脚本:
codex completion bash
codex completion zsh
codex completion fish
11. Codex CLI 全部斜杠命令完整释义
2.1 模型、推理与工作模式
/model
作用:选择当前会话使用的模型;在可用时也可以选择推理强度。
场景:任务复杂度发生变化,或者希望在速度、成本和推理能力之间切换。
示例:输入 /model,然后在菜单中选择模型。
注意:可选模型由账户权限、组织策略和当前模型目录决定。切换后可用 /status 验证。
/fast
作用:开启或关闭当前模型的 Fast 服务层,并保存选择。
场景:希望降低交互等待时间,且当前模型提供 Fast 层。
示例:/fast;再次执行则关闭。
注意:这是由模型目录动态决定的功能;模型不支持时,该命令不会显示。
/plan
作用:进入计划模式,让 Codex 先分析和制定步骤,再进行实现。
场景:复杂改造、迁移、多文件修改或需要先确认方案的任务。
示例:/plan 为这个服务设计 Python 3.11 迁移方案
注意:支持直接附带文本或图片;Codex 正在执行任务时通常不可用。
/goal
作用:为当前聊天设置一个持久目标,使 Codex 在较长的工作过程中持续跟踪目标。
常用形式:
/goal <目标> 设置目标
/goal 查看当前目标
/goal edit 编辑目标
/goal pause 暂停目标
/goal resume 恢复目标
/goal clear 清除目标
示例:/goal 完成存储服务迁移并保持全部测试通过
注意:目标不能为空,官方文档规定上限为 4000 字符;更长的要求应写入文件后引用。
/personality
作用:选择 Codex 的沟通风格,不改变任务本身的要求。
可用风格:friendly、pragmatic、none(具体界面可能显示本地化名称)。
场景:希望回复更友好、更务实,或者关闭人格风格指令。
注意:当前模型不支持 personality 时,此命令会隐藏。
/permissions
作用:调整 Codex 无需询问即可执行的操作范围及审批方式。
场景:在只读审查、工作区自动编辑或自定义权限配置之间切换。
示例:输入 /permissions 后选择 Auto、Read Only 或组织配置的权限档案。
注意:放宽权限会扩大 Codex 可执行操作的范围,应确认工作目录和目标环境正确。
/experimental
作用:查看和开关实验性功能,例如网络代理、运行时防止系统休眠等。
场景:试用尚未稳定发布的功能。
注意:某些选项修改后需要重启 Codex;实验功能可能改变或被移除。
/memories
作用:控制 Codex 是否读取已有记忆,以及是否生成新记忆。
场景:需要跨会话保留偏好,或希望临时禁用记忆。
注意:只有账户和环境提供 Memories 时才会出现。
2.2 会话生命周期与上下文
/new
作用:在同一个 CLI 进程中开始新聊天,保留当前终端中的可见内容。
示例:/new
/new bug bash
说明:附带文字时可直接给新聊天命名。与 /clear 的区别是它不会先清空终端显示。
/clear
作用:清空终端显示并开始一个新聊天,同时重置聊天上下文。
示例:/clear
/clear release prep
注意:Ctrl+L 只清屏、不创建新聊天;/clear 才会创建新上下文。任务运行时可能不可用。
/rename
作用:重命名当前已保存的聊天,不改变聊天内容。
示例:/rename 修复 MDS 主节点查询
场景:给长时间运行或以后要恢复的会话设置便于识别的名称。
/resume
作用:从会话列表中恢复一个已保存的聊天。
示例:/resume,然后从选择器中挑选会话。
说明:会加载原聊天记录,使工作可以从之前的位置继续。
/fork
作用:复制当前聊天,生成具有新会话 ID 的分支。
场景:希望探索另一种方案,同时保留原始对话不变。
注意:恢复并分叉其他已保存会话,也可以从 Shell 使用 codex fork。
/side
/btw
作用:启动临时的旁支聊天;/btw 是 /side 的别名。
示例:/side 检查这个方案是否存在明显风险
场景:临时询问一个问题,但不想打断或污染主聊天上下文。
注意:旁支聊天中不能再次创建旁支;代码审查模式期间也可能不可用。
/compact
作用:总结较早的聊天内容,用摘要替代原始长上下文,以释放上下文窗口。
场景:长会话接近上下文上限,但仍需保留关键决策和进度。
注意:压缩会丢失部分细节;重要的精确内容应先写入文件或提交到版本控制。
/archive
作用:归档当前会话并退出 CLI。
场景:会话工作已经结束,但希望保留聊天记录并从活动列表中移除。
恢复:可通过 codex unarchive <SESSION> 恢复。
注意:任务运行期间不可用;归档不等于删除。
/delete
作用:永久删除当前会话记录并退出 CLI。
影响:当前会话及其派生的子会话都会被删除。
警告:这是不可恢复的破坏性操作。执行前确认聊天记录已不再需要;任务运行或旁支聊天中不可用。
/app
作用:在 macOS 或 Windows 的 ChatGPT 桌面应用中继续当前 CLI 会话。
场景:从终端切换到图形界面,同时保留同一聊天记录。
注意:要求桌面应用已安装并正在运行;Linux 通常不提供此命令。
/quit
/exit
作用:立即退出 Codex CLI;两个命令等价。
注意:退出不会自动提交代码。重要修改应先保存、检查或提交。
2.3 项目、文件与代码审查
/init
作用:在当前目录生成 AGENTS.md 指令模板。
场景:为仓库记录构建命令、代码风格、测试方式、安全限制等持久指令。
注意:生成后应人工检查并按项目实际情况修改;子目录也可以使用自己的 AGENTS.md。
/diff
作用:显示当前 Git 工作区差异。
范围:包括已暂存修改、未暂存修改以及 Git 尚未跟踪的文件。
场景:提交前检查 Codex 实际修改了什么。
注意:只展示差异,不会自动修复或提交。
/review
作用:让 Codex 审查当前工作树中的代码改动。
场景:检查行为回归、潜在缺陷、缺失测试和风险点。
建议:审查后配合 /diff 查看精确改动。
注意:默认使用当前会话模型;配置了 review_model 时可使用单独的审查模型。
/mention
作用:把特定文件或目录明确附加到聊天上下文。
示例:/mention service_mds/get_mds_master.py
场景:希望 Codex 优先阅读或引用某个路径,避免依赖模糊描述。
/ide
作用:把 IDE 当前打开文件、选区等上下文加入下一条提示。
示例:/ide 解释并修复当前选中的函数
注意:必须存在可连接的 IDE 上下文;纯终端环境中可能没有可用内容。
/import
作用:导入 Claude Code 或 Cursor 的受支持配置、项目文件和近期聊天。
场景:从其他编码代理迁移到 Codex。
注意:只在本地 TUI 会话中可用;任务运行中、远程会话以及连接本地 app-server daemon 时不可用。
2.4 扩展、工具与集成
/skills
作用:浏览可用技能,并把选中的技能加入后续任务上下文。
场景:使用文档、图像生成、特定框架或团队工作流等专项指令。
注意:选中技能后,下一项请求会遵循该技能的说明;技能是否可用取决于本机和插件配置。
/apps
作用:浏览 Apps/连接器,并将所选应用以 $app-slug 形式插入输入框。
场景:请求 Codex 使用已连接的外部服务或数据源。
注意:应用的可用操作取决于授权、连接状态和组织策略。
/plugins
作用:浏览已安装和可发现的插件,查看能力或切换插件启用状态。
场景:安装、检查或管理为 Codex 提供技能、工具和应用的插件包。
注意:组织策略可能限制插件发现和启停操作。
/hooks
作用:查看和管理生命周期钩子,包括信任、禁用或重新启用非托管钩子。
场景:排查任务开始、停止等事件触发的自动脚本。
安全:启用前应检查钩子来源及执行内容;管理员托管的钩子不能从用户界面禁用。
/mcp
作用:列出当前配置的 Model Context Protocol 服务及其工具。
示例:/mcp
/mcp verbose
说明:verbose 会显示更详细的服务诊断信息。
场景:检查外部工具是否连接、为何某个 MCP 工具不可用。
/feedback
作用:向 Codex 维护团队提交反馈,并可选择附带日志或诊断信息。
注意:提交前留意日志中是否可能包含项目路径、命令或其他敏感上下文。
/logout
作用:清除当前用户的本地登录凭据并退出登录状态。
场景:共享机器使用完毕、切换账户或排查认证问题。
2.5 多智能体与后台终端
/agent
/subagents
作用:查看并切换当前聊天派生出的智能体线程;二者等价。
场景:主智能体将独立子任务交给子智能体后,检查或继续其中某条线程。
注意:没有子智能体时,列表可能只有主线程。
/ps
作用:显示后台终端、运行状态及最近几行非空输出。
场景:检查构建、测试、服务器等长时间运行命令的进度。
注意:只有当前会话启动了后台终端时才会显示内容。
/stop
/clean
作用:停止当前会话启动的全部后台终端;/clean 是 /stop 的别名。
场景:终止不再需要的构建、测试、监控或开发服务器。
注意:会同时停止全部后台任务,不适合只想终止其中一个任务的场景。
/approve
作用:在自动审查器最近拒绝某项操作后,批准其重试一次。
场景:确认被拒绝的操作确实安全且符合当前任务范围。
注意:它不是永久放宽权限;只针对最近的拒绝进行一次重试,并继续受当前会话策略约束。
2.6 状态、诊断和界面设置
/status
作用:显示当前会话配置和资源状态。
通常包括:会话 ID、当前模型、审批策略、可写目录、上下文用量、Token 使用或速率限制;远程连接时还可能显示远程地址和服务版本。
场景:确认 Codex 使用了预期模型、目录和权限。
/usage
作用:查看账户 Token 活动,或使用可用的速率限制重置选项。
常用形式:
/usage 打开用量菜单
/usage daily 查看每日活动
/usage weekly 查看每周活动
/usage cumulative 查看累计活动
注意:需要支持的 Codex 服务账户认证;否则会提示登录。
/debug-config
作用:打印配置层加载顺序、启用状态、策略来源及最终约束。
场景:排查 config.toml 中的值为何未生效,或为什么审批、沙箱、MCP、网络策略被强制覆盖。
可能显示:allowed_approval_policies、allowed_sandbox_modes、mcp_servers、rules、enforce_residency、experimental_network 等。
/statusline
作用:交互式配置 TUI 底部状态栏的字段和顺序。
可选内容:模型、模型与推理强度、上下文、速率限制、Git 分支、Token、会话 ID、当前目录、项目根目录、Codex 版本等。
持久化:写入 config.toml 的 tui.status_line。
/title
作用:配置终端窗口或标签页标题中显示的字段及顺序。
可选内容:应用名、项目、运行状态、线程、Git 分支、模型、任务进度等。
持久化:写入 tui.terminal_title。
/theme
作用:预览并选择终端语法高亮主题。
持久化:写入 tui.theme。
/keymap
作用:查看、修改并持久化 TUI 键盘快捷键。
示例按键表示:ctrl-a、shift-enter、page-down。
注意:上下文专用绑定会覆盖全局绑定;空绑定列表表示取消绑定。
/vim
作用:切换输入框的 Vim 编辑模式。
场景:希望使用 Vim 的 normal/insert 操作方式编辑提示词。
持久化默认值:可在 config.toml 设置 tui.vim_mode_default = true。
/raw
作用:开启或关闭原始滚动输出模式,使终端选择和复制更直接。
常用形式:/raw、/raw on、/raw off。
快捷键:默认可使用 Alt+R。
持久化默认值:tui.raw_output_mode = true。
/copy
作用:复制 Codex 最近一条已经完成的回复或计划文本。
快捷键:Ctrl+O。
注意:当前轮仍在生成时,只复制上一条完整输出;尚无完整输出或刚执行回滚时可能不可用。
/pets
/pet
作用:选择、隐藏终端中的环境宠物;/pet 是 /pets 的别名。
示例:/pets;/pets off。
注意:只在支持该显示能力的终端中生效。
2.7 Windows 专用沙箱命令
/setup-default-sandbox
作用:配置 Windows 提权代理沙箱,以替代降级的受限令牌沙箱。
出现条件:仅当 Windows 正在使用降级沙箱且 Codex 提供升级流程时显示。
注意:配置过程可能要求管理员权限。
/sandbox-add-read-dir
作用:为 Windows 原生沙箱增加一个额外的只读目录。
示例:/sandbox-add-read-dir C:\\absolute\\directory\\path
要求:参数必须是已经存在的绝对目录。
注意:只授予读取权限,不等于写入权限;仅 Windows 原生 CLI 可用。