Signal Desk
返回Codex 教程

把 Codex 装对,并完成第一次环境验收2 / 3

第 1 部分 · 安装动手教程阅读约 13 分钟 · 实操约 22 分钟

安装 Codex CLI,验证版本、路径与登录

在 macOS、Linux 或 WSL2 中安装 CLI,用版本和只读任务证明 shell 环境真的可用。

先知道终点

做完你会得到
一份可复现的 CLI 安装记录和通过验证的第一个只读会话
开始前只需要
能打开终端;知道如何进入一个练习目录
最后留下这些证据
codex 命令解析到预期路径并输出版本;登录后完成一次不修改文件的项目说明任务

内容校准于 2026-08-01 · 第 2 / 38 节已发布课程

安装器说成功,终端却可能在运行另一个 Codex

一台使用很久的电脑,可能同时留下 npm、脚本安装和旧 shell 配置。你再次安装,终端依然命中旧路径;画面没有报错,环境却并不可信。

CLI 是否装对,要看新终端里的解析路径、版本和真实只读任务。 我们先记录现场,再选择一个安装来源。

这节课要交付什么

这不是一份只需要读完的功能介绍。你要在真实但可控的环境中留下一个可以复查的结果,并且能回答三个问题:Codex 看到了哪些事实,它实际做了哪些动作,你用什么独立证据确认结果成立。

最终结果是:一份可复现的 CLI 安装记录和通过验证的第一个只读会话。开始前先创建一份简短记录,把当前环境、目标、禁止动作和验收方式写下来。后面的命令、截图和修改都回到这份记录,不靠聊天窗口里的“应该已经好了”判断完成。

先看官方边界

当前官方 CLI 页面为 macOS、Linux 和 WSL2 提供安装脚本,并以进入项目目录后运行 codex 作为起点;官方 GitHub 仓库同时记录 npm 包入口。教程不把第三方镜像、未知的一键脚本或管理员权限当默认方案。安装命令会变化,复制前要再次核对官方域名与页面。

官方页面会随产品更新。教程引用的是当前可核对的能力与命令,不把界面位置、套餐权限或预览功能包装成永久承诺。你在自己的设备上看到不同按钮时,先核对官方页面和本机版本,再决定是否继续;不要用过期截图覆盖现场事实。

任务现场

终端里输入 codex,系统可能显示 command not found,也可能命中了旧版本。两种情况都不能靠“再装一次”解决:前者常是 PATH,后者可能是多个安装来源并存。你需要先记录 shell、操作系统、which codex 的结果和现有版本,再选择唯一安装路径。

先把现场写成四行:工作目录或项目、当前版本或输入、允许动作、完成证据。如果其中任何一行只能写“让 Codex 自己看”,说明上下文仍然不够具体。Codex 可以帮助检查,但不能替你决定哪些数据能上传、哪个生产动作已获授权,或一个异常是否可以忽略。

动手前准备

新建 cli-install-record.md,记录 uname 或系统版本、当前 shell、which codex、node/npm 是否存在。macOS/Linux/WSL2 优先从官方 CLI 页面复制当前安装命令;若团队明确采用 npm,再从官方 GitHub README 核对包名。不要把 token、cookie 或完整环境变量写进记录。

把练习放在可恢复的位置,保留原始输入,并记录开始时的状态。涉及代码时先看版本控制状态;涉及数据时先复制脱敏样例;涉及外部服务时先使用只读或草稿模式。准备工作看似慢,却能让失败变成一次可以解释和回退的实验。

第一步:只读建立基线

安装前运行 which codex || echo "codex not found",若已有结果,再运行 codex --version 并记录路径。确认来源后只执行一种官方安装方法。完成后打开一个新的终端窗口,再次检查 which codex 和 codex --version;新窗口能排除当前 shell 临时状态造成的假成功。

这一阶段不要急着要求“直接修好”。先让 Codex 复述目标、列出它实际读取的来源,并指出还缺哪些证据。你要检查它有没有打开正确目录、有没有把搜索摘要当原文、有没有把旧日志误当当前状态。基线不可信,后面的修改越多,返工成本越高。

第二步:限制范围后执行

进入一个只含 README 的练习目录后运行 codex,选择官方支持的登录方式。首次请求写:‘只读告诉我这个目录是什么、有哪些文件、README 的第一条规则;不要修改或运行项目脚本。’随后使用 /status 检查会话与工作目录,需要时用 /permissions 确认当前权限。

执行指令应该同时包含目标、范围和停止条件。把“不要乱改”换成可观察边界,例如只允许修改两个文件、不安装依赖、不发送消息、不触碰生产数据。出现新的权限、需要改变既有契约或发现输入口径不一致时,要求 Codex 停下来报告,而不是自行选择更大的方案。

第三步:用独立证据验收

退出 CLI,再使用 codex resume 恢复会话,核对它仍然对应练习目录。检查 README 哈希或版本控制状态没有变化。最后记录安装来源、解析路径、版本、登录方式、项目路径和一次成功的只读输出;这些是以后升级或排错的基线。

验收必须尽量脱离生成答案本身:安装类任务看版本、路径和真实启动结果;界面任务看目标视口与交互;数据任务用独立计算和异常清单;安全任务用原始复现、补丁 diff 与回归测试。把通过、失败和未验证分开记录,未验证不是失败,但绝不能伪装成通过。

完整案例

阿杰的 Mac 上 npm 全局目录与官方脚本目录都存在。他先发现 which codex 指向旧 npm 路径,版本落后。没有直接覆盖安装,而是确认团队不依赖旧版本,移除冲突来源后按当前官方页面安装。新终端中路径唯一,版本正确;只读任务复述了 README 规则,git status 为空。这个记录比“安装成功”的截图更能解释环境。

案例的重点不是复制同一句 prompt,而是观察决策顺序:先确定权威来源,再缩小动作面,最后让证据闭环。如果你的项目结构不同,保留这个顺序,替换文件名、命令和验收对象。任何会产生外部影响的步骤,都应在真正执行前再次获得明确授权。

故障诊所

command not found 时先看 which、PATH 和 shell 启动文件,不要用 sudo 反复安装。登录失败时保留可公开的错误码与时间,检查网络和账号可用性,不粘贴凭据。版本没有变化时比较多个 codex 路径和新旧终端。若 WSL 中命中 Windows 可执行文件,回到 WSL 的 which 结果与 CODEX_HOME 设计,明确宿主再继续。

恢复时一次只改变一个变量。先保存错误原文和当前状态,再判断问题属于安装路径、权限、上下文、实现还是验收环境。不要连续重装、重写和切换工具,因为那会抹掉因果关系。修复后重复最小复现,再跑相邻路径,确认没有用一个新问题遮住旧问题。

迁移练习

模拟一次升级:先保存当前版本与路径,再按官方页面执行更新方式,打开新终端核对版本,恢复旧会话并运行同一只读检查。把任何差异写入 upgrade-record.md,并说明如果升级失败怎样回到可用状态。

完成练习后,把其中的产品名和文件名遮住,只保留“输入—动作—证据—停止条件”。如果这四项仍能指导另一个任务,说明你学到的是方法;如果离开示例 prompt 就不会继续,回到任务现场,补出你真正依赖的判断规则。

以后升级时,先比较路径再比较功能

把 which codex、版本、安装来源、登录方式和练习目录保存下来。升级后先重复这些检查,再判断产品行为变化。

如果问题只能靠反复重装暂时消失,它还没有被解释。可复现的环境记录,才是 CLI 真正的起点。

完成检查

  • 只保留一个明确的 CLI 安装来源
  • 新终端中的路径和版本符合预期
  • 安装与排错过程中没有暴露凭据
  • 只读会话能够退出、恢复并保持正确目录
  • 我保留了开始状态、实际动作和最终证据
  • 我把失败、未验证和已通过分开记录
  • 需要新权限或外部影响时,Codex 会停下来询问

参考与校准来源

本文是官方资料的中文转译与教学重组,不是逐字翻译;产品能力、命令、默认值与安全边界以下列官方原文为准。