Skip to content

F4|源码与官方入口:crate 对章,跳转文档以官网为准 ​

先别把 docs/ 当架构正文 ​

读完 F3,去仓库 docs/ 找「官方说明」,会看到大量只有三行的 md,链到 developers.openai.com。其中 docs/sandbox.md 还链到 codex/security——那是 Codex Security 产品页,不是 Seatbelt(E11)。

判断先说清楚:实现以 codex-rs/ 源码为准;产品能力、地区、套餐以 developers.openai.com/codex 为准;仓库 docs/ 多数只是跳转。 这本电子书是读者向的拆解,不是 OpenAI 文档,也不是贡献指南——不接受外部代码 PR(A0)。

冲突时:源码行为 > 官网当前页 > 本电子书行号 > docs/*.md 跳转。行号会漂,按符号名重新定位。


1. codex-rs/ crate 对照章 ​

不必读 workspace 里每一项。utils/、测试支持、v8-poc 当黑盒。analytics/、otel/ 贯穿各章,不当独立产品层。主干:

crate / 目录干什么章
cli/分发器:无参数 TUI、exec、app-server、mcp、plugin、cloud、apply、queueA1 E1 B1
protocol/Op / Event / SessionSource / 配置枚举B1
core/Session、run_turn、TaskA2 B1
state/ thread-store/索引、分页历史、lineage、持久队列、migrateG2(队列概念仍见 B1)
tools/ core/src/tools/ apply-patch/Spec / Handler / Orchestrator / patchB2
ext/extension-api/进程内 contributor 总线:install(),不是用户 PluginB2 D2
ext/image-generation/ ext/items/图生成工具与 turn itemE5 B2
ext/git-attribution/提交 / PR 署名说明书(world state)C1
ext/history-notes/历史笔记工具(host extension)B2
file-watcher/盯 skill 根,推 skills/changedD1 G3
shell-escalation/ core/src/tools/runtimes/zsh_fork.rsUnix zsh-fork:升权走 socket附录 B
sandboxing/ linux-sandbox/ windows-sandbox-rs/ windows-sandbox-service/ mxc-sandbox/ execpolicy/沙箱、前缀规则、permission profile 投影;Windows elevated / MXC 不是第四个 SandboxTypeB3
network-proxy/沙箱内出站 HTTP/SOCKS、凭证经纪G6
exec-server/ core/src/environment_selection.rs执行后端、ThreadEnvironmentsB6
core/src/client.rs codex-api/ codex-client/Responses WS/HTTP、限流、重试G1
model-provider/ model-provider-info/ ollama/ lmstudio/provider 能力、OSS 端点G1 A1
models-manager/模型目录 / preset;# Personality 剥离G1 C4
core/src/unified_exec/可恢复 PTYB2 附录 B
context-fragments/ core/src/context/ compact*.rs rollout/ history/注入、压缩、JSONLB4
rollout-trace/trace bundle:resume 重放之外的旁路排障/回放记录,不进热路径G2
config/ codex-home/ utils/home-dir/ message-history/分层、身份根、history.jsonl 输入框历史B5
features/Feature 注册表、Stage、legacy 键G4
login/ secrets/ keyring-store/ aws-auth/ workload-identity/登录路径、钥匙串、云身份B5
user-verification/本机 Secure Enclave / Touch ID 签名,证明「这个人、这台机器」;目前只有 macOS 实现,还没接进审批判定B3
process-hardening/pre-main 加固:禁核心转储、反 ptrace、清 LD_/DYLD_ 环境变量;目前只接进 voice-host/responses-api-proxy,主 CLI 没调B3
git-utils/Git 操作共用底座:worktree、trust 根、baseline diff、apply_git_patchE2 E3 E6 B5 C2
backend-client/ cloud-config/账号额度/费用、托管配置包(DeliveredConfigToml 等)、云任务详情的共用后端 clientB5 E3 C2
attachment-store/附件持久化的 storage-neutral trait;默认 InlineAttachmentStoreE5
feedback//feedback 上报;顺带暂存 Guardian 拒绝记录供用户主动附件上传E10 附录A
core/src/agents_md.rs prompts/说明书发现、review rubricC1 E6
memories/read memories/write跨会话笔记C2 C3
collaboration-mode-templates/Default/Plan 说明书预设G5
ext/goal/GoalC5
skills/ ext/skills/Skill 发现与注入D1
plugin/ core-plugins/ utils/plugins/包装盒与市场D2
codex-mcp/ rmcp-client/ connectors/MCP client、AppsD3
hooks/生命周期拦截D4
agent-roles/ agent-graph-store/ agent-identity/ core/src/tools/handlers/multi_agents*子代理 V1/V2D5
tui/ exec/ sdk/多前端投影E1
app-server/ app-server-protocol/ v2 app-server-daemon/ app-server-transport/插座、协议、进程寿命E1 G3
worktree/第二份 checkoutE2
chatgpt/ cloud-tasks/apply / 云端客户端E3
file-search/@ 文件搜索E5
voice-host/ realtime-webrtc/Voice 音频传输、capture/playback;TUI 已默认开启E5
external-agent-migration//import:60+ 文件的迁移器,不是一句 slashE9
tui/src/pets/状态灯E8

code-mode*、ext/guardian-* 是有意留到 F3 第一周之后的;voice-host/ realtime-webrtc/ 撑的是 E5 的语音通道,同样不是 P0。ext/queue 的持久队列在 B1,落盘在 G2。analytics/ / otel/ 是 Event 的投影,项目 toml 不准配 otel(B5)。codex-core 已经太胖(仓库 AGENTS.md):新代码优先新 crate + Extension install(),不要再往 core 塞一章。


2. CLI 子命令对照章 ​

E10 只管 TUI /。下面这些进 Subcommand(cli/src/main.rs),不进 slash 弹窗:

命令干什么章
(无子命令)交互 TUIE1
exec无头跑一轮E1
review无头 reviewE6
login / logout鉴权B5 A1
mcp管外部 MCPD3
plugin包装盒安装器D2
app-server / remote-control / agents插座、daemon、浏览共享会话G3 E3
app打开桌面壳(macOS/Windows)A1
apply / cloud云端 diff 带回家E3
resume / fork / queue / archive / delete / unarchive / migrate-rollouts会话寿命与索引A2 G2
features写用户层开关G4
doctor只读体检B5
sandbox在 Codex 沙箱里跑一条宿主命令B3
exec-server独立执行后端B6
update / completion升级自己、生成补全运维,不是循环
debug / execpolicy / responses-api-proxy / stdio-to-uds调试或内部不必当产品入口

没有这张表会怎样?读者从 E10 以为 slash 就是全部入口,错过 sandbox、migrate-rollouts、agents。slash 是菜单,CLI 枚举才是分发器。


3. 官网页面对照 ​

入口:developers.openai.com/codex。产品页会变,下表对的是 主题,不是永久 URL。

主题典型路径章
CLI 功能 / slash/codex/cli/features /codex/cli/slash-commandsE1 E10
鉴权/codex/authA1 B5
配置/codex/config-basic 等B5
AGENTS.md/codex/guides/agents-mdC1
Skills/codex/skillsD1
MCP/codex/mcpD3
沙箱与审批/codex/agent-approvals-securityB3
ExecPolicy/codex/exec-policyB3
Memories / Chronicle/codex/memories /codex/memories/chronicleC2 C3
Goal/codex/prompting Goal modeC5
Worktrees/codex/app/worktreesE2
Automations/codex/app/automationsE7
Computer Use/codex/app/computer-useE4
App Server/codex/app-serverE1 G3
非交互/codex/noninteractiveE1
Codex Security 产品/codex/securityE11(不是沙箱)
Subagents/codex/concepts/subagentsD5

agentskills.io 是 Skill 文件夹跨工具约定(D1),不是 Codex 独占协议。


4. 仓库 docs/ 里哪些只是跳转 ​

几乎整目录都是官网镜像入口:

文件跳到
getting-started.mdCLI features
authentication.md/codex/auth
config.md example-config.mdconfig-basic / advanced / reference / sample
agents_md.mdguides/agents-md
skills.md/codex/skills
exec.mdnoninteractive
execpolicy.mdexec-policy
slash_commands.mdCLI slash-commands
sandbox.md/codex/security(产品名冲突,沙箱应看 agent-approvals-security)

例外:contributing.md(不接受 PR)、open-source-fund.md、license.md、install.md 是仓库自己的政策,不是功能说明书。

AGENTS.md 在仓库根:给 这个 repo 里的 agent 读的项目政策,也是 C1 的样例,不是用户手册。


5. 读完之后 ​

做自己的 agent:从 F3 P0 开工,一枪合同看 B7,枪怎么飞出去看 G1,钉测试看 附录 F,resume 落盘看 G2,骨架用 F2,放文件用 F1。多前端插座看 G3,开关看 G4。第一周不必做 daemon 和 Network Proxy。

继续挖 Codex:打开上表 crate,对着 path:line 走;产品按钮以官网为准。不要从 docs/sandbox.md 或 tui/src/chatwidget.rs 起手。


6. 结语:带走一句话 ​

源码在 codex-rs/,产品在 developers.openai.com/codex,仓库 docs/ 多数只是跳转——沙箱文档尤其不要点进 Codex Security 产品页;这本电子书教的是 harness 怎么分层,不是把全家桶再实现一遍。