第一章 · 调研说明

本次调研从产品设计的角度介绍 Codex 的能力划分和运行机制,帮助理解一个 Agent 产品需要哪些能力、这些能力怎样配合。内容结合源码,以正文、图示和表格展开。

本次调研使用 Codex 官方代码仓库在 2026 年 10 月 9 日的版本,来自 main 分支,提交编号为 82883da25e3b。后续各章的源码分析均以这个版本为依据。

01 Codex 产品

本章主要介绍 Codex 的两种产品:CLI 和桌面端。CLI 在终端中使用,桌面端通过图形界面管理项目和任务。桌面端还可以选择任务在哪里执行:在自己的电脑上,或交给云端。

产品执行方式使用方式与能力
Codex CLI
命令行工具
本地执行在项目目录打开终端,启动 Codex 并描述任务。它可以读取和修改文件、运行命令、审查代码,也可以通过脚本调用。
Codex 桌面端本地任务在界面中打开电脑上的项目并提交任务。Codex 在本机修改文件、运行命令,用户可以查看过程和改动;也可以使用独立的 Git 工作目录,减少多个任务之间的冲突。
云端任务选择准备好的云环境,再提交任务。Codex 在云端的独立工作区修改代码、运行命令;电脑休眠后任务仍可继续,用户随后回到界面查看结果。

本次调研涵盖 CLI 和桌面端,也会介绍本地任务与云端任务的能力和使用方式。重点是结合公开源码,研究 Codex 在本地如何接收任务、调用模型、执行工具,以及保存和恢复会话;云端部分主要依据官方资料介绍。

以“给项目增加筛选功能”为例,两者都可以读取代码、修改文件、执行检查,并根据用户反馈继续修改。使用 CLI 时,用户在终端中查看过程;使用桌面端时,用户通过项目列表、聊天窗口和文件查看界面管理这项工作。

CLI 方便把 Codex 放进已有的命令行流程。例如,脚本可以提交一次任务,取得结果后继续执行其他操作。桌面端方便同时管理几件工作:切换项目和对话、打开生成的文件、检查改动,以及把任务放到独立的 Git 工作树中,减少多个任务修改同一份文件时的冲突。

它们复用 Codex 的执行内核,但界面功能和接入方式有区别。因此,某个功能出现在桌面端,并不表示 CLI 中也有同样的按钮或管理流程。

02 调研范围

这份调研主要研究 Codex 公开源码中的 Agent 执行内核,以及让界面和业务程序调用它的接口。重点是一次任务如何启动、组织上下文、请求模型、执行工具、检查权限、保存记录和处理异常。CLI 是核对这些机制的主要入口,App Server 和 SDK 用于理解怎样接到自己的产品里。

桌面端、编辑器和云端用于说明这些机制怎样变成用户能操作的功能,例如进度显示、审批、任务管理和结果审查。客户端的具体行为会依据对应文档和实际使用说明;公开内核的源码不代表桌面端或云服务的全部实现。

文档面向设计 Agent 产品的产品经理。读完应能理解产品需要哪些能力、应该放在哪个部分,以及用户提交任务、补充要求、处理失败和检查结果时,系统需要怎样配合。

03 阅读说明

各章以正文解释概念和机制,用结构图、流程图和必要的表格展示关系。点击能力节点可以查看详细说明和代表源码。文中以“给已有项目增加筛选功能”为例。