← 返回目录

第 12 卷

第 12 / 28 卷日期:

# 从项目根目录验证 codex -a never "Summarize the current instructions."

# 验证子目录的override是否生效 codex -C services/payments -a never \ "Show which instruction files are active."

行为上的验证更可靠。§03那个任务里,AGENTS.md要求「用中文回复」「总结里列出改动的文件名」,它的最终总结两条都做到了。

Codex每次运行都会重建指令链,不存在缓存。如果指令看起来不对,重启Codex即可。

常见问题排查

问题排查方向

Codex没加载任何指确认你在预期的仓库目录中,会话里用/status看Directory和Agents.md两行。确认文件
令非空。
加载了错误的指令检查目录树上层是否有AGENTS.override.md,重命名或删除override文件。
Fallback文件名不生确认config.toml中拼写正确,然后重启Codex。

效

指令被截断提高 project_doc_max_bytes,或把长规则拆分到子目录。

花叔的经验:AGENTS.md不要写太长。短而准比长而全有用。我自己写作项目的规则文件改了很多轮,全局那份和写作库那份现在都在10KB上下,里面不少条目后面都写着是哪天、因为什么事加的。每条规则最好都对应一个真实踩过的坑,提前想象的「万一需要」先别写。从你和Codex协作中真正出过问题的地方开始写,一条一条攒,这份文件自然会长成你需要的样子。

§06 桌面App里的Codex:多线程的指挥中心

Codex in the ChatGPT Desktop App

同时跑几个任务、让agent操作本机的其他App、在内置浏览器里看它改的网页、用手机远程审批,这些是桌面App比CLI多出来的部分。7月起,它住在ChatGPT桌面App里。

CLI有两类事天然不擅长:同时盯好几个agent,和让agent操作图形界面。桌面App就是为这两类事做的。

它现在在哪

2026年7月9日(App版本26.707)起,原来独立的Codex App并进了ChatGPT桌面App。打开ChatGPT桌面 App,侧边能切三块:

Chat:普通的ChatGPT对话。

Work:ChatGPT Work,用和Codex同源的能力处理非编程的日常任务。

Codex:本章讲的这一块,可以设成打开App时的默认视图。

Work和Codex共用同一份用量和额度。老的Codex App用户是原地更新过来的,项目和线程都在。

平台上,macOS和Windows是正式版,Linux(Ubuntu、Debian、Fedora,x64和ARM64)从8月11日起有预览版。装了CLI的话, codex app 会打开桌面App,没装就打开安装程序;在CLI会话里输入 /app,可以把当前

这个会话接到桌面App里继续。

这一章的App功能这次没有截图实测,内容按官方changelog和文档整理,日期是changelog里的日期。

项目、线程、三种模式

App里可以加多个项目,每个项目对应一个代码库目录。7月23日起一个项目可以挂多个文件夹,其中一个是主文件夹,AGENTS.md、skills和config.toml只从主文件夹里找。

每个项目下面开多个线程,一个线程就是一次对话、一个任务。新建线程时选它在哪跑:

模式工作方式适合
Local直接在项目目录里改常规开发,改了马上能看效果
Worktree在一个独立的git worktree里改几件事并行,互不干扰
Cloud在云端环境里跑(§07)电脑关了也要继续,或者要特定环境

Worktree:并行的基础

git worktree能让同一个仓库同时有好几个独立的工作目录。选Worktree模式,Codex会给这个线程建一个独立的checkout,agent在里面改,你本地的代码不受影响,你可以照常写代码、跑服务。

干完之后两条路:直接在worktree上建分支、提交、推送、开PR;或者用Handoff把改动移回Local,在你熟悉的环境里检查。Handoff由Codex处理底层的git操作。要注意一条git本身的限制:同一个分支同一时间只能被一个checkout使用,worktree上建了 feature/a,Local就不能同时checkout它,这时候用Handoff,别手动

切分支。

CLI现在也能做这件事( codex --worktree、 /worktree,§04),区别是App把几个线程摆在一个窗口里,谁在跑、谁在等你批准,一眼能看到。

一个典型的并行用法

假设一个Web项目同时有三件互相独立的事:做一个新的设置页、把一个接口从REST改成GraphQL、修首页的一个bug。

1.每件事开一个Worktree线程,需求写清楚,设置页的需求可以用 @ 引用设计文档。

2.三个线程并行跑。审批多的话,权限选Approve for me,让自动审查处理低风险请求(§04)。

3.哪个先完成先看哪个的diff,没问题就开PR,或者Handoff回Local做集成测试。

App的diff面板能按未提交、整个分支、最近一轮切换范围,能在具体某一行上加评论,再让它「处理inline评论,改动尽量小」。评论锚定在行上,比在对话框里描述「第几行那个函数」准确。

子agent

除了你手动开几个线程,一个线程里的主agent也可以自己派子agent。当前版本子agent默认开启, codex features list 里 multi_agent 是stable。配置在 config.toml 的 [agents] 下:

[agents] max_concurrent_threads_per_session = 6# 旧名 max_threads 仍可用 default_subagent_model = "gpt-6-luna"

default_subagent_reasoning_effort = "medium"

每个自定义角色单独一个TOML文件,放在 ~/.codex/agents/(个人)或 .codex/agents/(项目):

name = "planner"

description = "把大任务拆成可并行的小任务,自己不动手"

developer_instructions = "你是协调者,把任务拆给子agent,自己不直接改代码。"

model = "gpt-6.1-sol"

角色文件里写 sandbox_mode、 approval_policy 不会生效,子agent的沙盒和审批跟着父会话走。想让它「不

全站分卷索引 · 28 卷
  1. 1第 1 卷
  2. 2第 2 卷
  3. 3第 3 卷
  4. 4第 4 卷
  5. 5第 5 卷
  6. 6第 6 卷
  7. 7第 7 卷
  8. 8第 8 卷
  9. 9第 9 卷
  10. 10第 10 卷
  11. 11第 11 卷
  12. 12第 12 卷
  13. 13第 13 卷
  14. 14第 14 卷
  15. 15第 15 卷
  16. 16第 16 卷
  17. 17第 17 卷
  18. 18第 18 卷
  19. 19第 19 卷
  20. 20第 20 卷
  21. 21第 21 卷
  22. 22第 22 卷
  23. 23第 23 卷
  24. 24第 24 卷
  25. 25第 25 卷
  26. 26第 26 卷
  27. 27第 27 卷
  28. 28第 28 卷