Codex
Codex CLI 实操:安装、登录、跑通第一个项目与打断技巧
作者用一个「阅读时长估算」小项目,把 Codex CLI 从安装、登录、信任文件夹到让 agent 改代码、跑测试的完整流程走了一遍。文中还整理了会话中插话、排队指令、回退重写提示词等日常操作细节,适合第一次上手 CLI 的人照着做。
今天就能做
- 在自己的项目里先 git init 并提交一次,再启动 codex,保证随时能回滚 agent 的改动。
- 第一次会话先用「只解释、不改文件」的提问摸清项目,再用 @ 引用具体文件提出修改需求,并把测试命令写进提示词。
- 记住三个键:Enter 插话、Tab 排队、空输入框连按两次 Esc 回退重写提示词。
安装与更新:按平台选一条路
- macOS 和 Linux 最快的是独立安装脚本,同一条命令也能用来更新;也可以用 Homebrew 的 cask 或 npm 全局安装 @openai/codex。
- Windows 在 PowerShell 里跑官方安装脚本;Omarchy 用系统包管理器安装,这个包会顺带装上 Linux 沙箱需要的 bubblewrap。macOS 的沙箱用系统自带的 Seatbelt,不用额外装东西。
- 装完用 codex --version 确认;之后 codex update 会自动识别安装方式并执行对应升级命令。出问题先跑 codex doctor,它会检查安装、配置、登录和运行时。
登录:三种方式对应三种场景
- 默认用 ChatGPT 账号登录,消耗套餐内的 Codex 额度,多数人用这个。
- 没有浏览器的服务器走 Device Code:在另一台设备上输入一次性代码完成授权,也可以直接 codex login --device-auth。
- 想按 API 用量计费就用自己的 API key,从环境变量管道传入,避免密钥留在 shell 历史里;codex login status 可以查看当前用的是哪种方式。
先建一个能跑测试的小项目
- 作者搭了一个 reading-time 项目:一个按每分钟 200 词估算阅读分钟数的函数,加两个 node:test 用例,用 npm test 跑通。
- 关键一步是 git init 并提交首个版本。Git 是 agent 改文件时的撤销按钮,后面的 diff 查看、代码审查、codex exec 都依赖 Git。
- 在项目目录里运行 codex,首次会问是否信任该文件夹。信任后 Codex 会加载项目自己的 .codex/ 配置、hooks 和规则,这些可能自动执行代码,所以自己建的项目可以放心,陌生仓库要谨慎。
第一次会话:提问、引用文件、贴图
- 先用不改文件的提问开场,比如让它解释项目做什么并明确不要改文件;它执行的每条命令、读的每个文件都会显示在对话记录里。
- 输入 @ 加文件名可以把具体文件带进提示词;也可以把截图粘进输入框,或用 codex -i error.png 启动时附带图片,让它解释报错并给出最小修复。
- 让 Codex 改代码时把验收条件写清楚:跳过围栏代码块、补一个测试、跑 npm test。它会在对话里以 diff 形式展示每处修改,最终以测试通过为准。
- 默认权限下,改本文件夹的文件和跑 npm test 不会逐次询问;但安装依赖需要联网,默认被拦下会先问你。想自己跑命令,在行首加 ! 即可,走的是同一套沙箱和审批设置。
会话中控制节奏的几个按键
- Codex 干活时输入框仍然可用。按 Enter 把新指令送进当前回合,默认等它完成当前步骤后生效;按 Esc 可以立刻中断当前步骤并发送。
- 按 Tab 则把消息排到当前回合结束后再执行,斜杠命令和 ! 开头的 shell 命令也能这样排队。
- 输入框为空时连按两次 Esc 可以回到上一条消息重新编辑,对话会从那个点分叉,适合纠正跑偏的提示词。长提示词按 Ctrl+G 调用 VISUAL 或 EDITOR 指定的编辑器,保存后内容回到输入框。
- 实验性的 instant_interrupt 打开后,新消息会直接打断当前回答并在同一回合继续。默认关闭且标注开发中,建议先用 codex --enable instant_interrupt 试一次,满意再用 codex features enable 永久写入 config.toml,codex features list 可查看所有开关。
登录后可以点赞、查看和发表评论