Skip to content

每天一个codex技巧-长任务别闷头跑,用 Pet 盯住停顿点

每天一个 Codex 技巧:长任务别闷头跑,用 Pet 盯住停顿点

Pet 不是用来卖萌的。

它真正有用的场景,是你让 Codex 跑一个需要几分钟的任务,但又不想一直盯着主窗口。

这也符合 OpenAI 对 Codex App 的定位:官方文档把 Codex App 称为一个面向多线程工作的桌面体验,可以并行处理 Codex threads,并带有 worktree、automations 和 Git 能力。

Pet 就是这个桌面体验里的一个状态浮层。OpenAI 文档里说,Codex pets 是 App 里的可选动画 companion;浮层的作用,是在你使用其他 App 时,让正在进行的 Codex 工作保持可见。它会显示当前活跃 thread,并反映 Codex 是在运行、等待输入,还是已经可以 review。

所以这篇讲的不是“让 Codex 更聪明”,而是一个很具体的用法:长任务开始后,用 Pet 盯住状态变化。

参考来源:OpenAI Developers 的 Codex app featuresCodex app settings

比如我这次问:

text
GPT 模型和周边有哪些更新?

这个问题看起来短,但它不是一句话能严谨回答的。Codex 要判断范围、查资料、组织结果,中间还可能需要确认来源。你如果一直盯着它,浪费时间;你如果切走窗口,又不知道它到底是在处理,还是已经停住等你。

这时候就可以把 Pet 打开。

Pet 正在处理 GPT 更新问题

Pet 解决的是可见性

很多人会误解 Pet 的作用:以为它能让 Codex 更聪明,或者替你判断答案对不对。

不是。

Pet 只解决一个很具体的问题:当 Codex 主窗口被你切到后台时,它还能把当前任务状态露出来。

所以它适合这种任务:

  • 不是几秒钟能结束。
  • 中间可能有“正在思考”“正在检索”“等待确认”。
  • 你可以暂时切走,但不能完全不管。
  • 任务结果需要你回来验收。

如果只是让 Codex 改一行文案、解释一个报错,没必要开 Pet。Pet 适合长任务,不适合所有任务。

开工前先叫出来

官方给了几种打开方式:在 composer 里输入 /pet;或者到 Settings > Appearance > Pets 里使用 Wake Pet / Tuck Away Pet;也可以用 Cmd+KCtrl+K 打开命令菜单执行同样的命令。

我的习惯是:长任务开始前,直接在 Codex App 里输入 /pet,把 Pet 放到屏幕边缘。位置不要挡正文,也不要放到你完全看不到的角落。

这次我在设置里选了 Fireball,因为它在浅色桌面上比较显眼。

Codex Pet 设置里选择 Fireball

官方设置页里可以选择内置 Pet,也可以从本地 Codex home 刷新自定义 Pet。这个设置本身不重要,重点是你要选一个“余光能注意到”的 Pet。

Pet 太低调,就失去意义;太挡视线,也会干扰工作。

想自定义 Pet 怎么办

官方文档里给的路径也很直接:不要手写隐藏目录里的配置,先让 Codex 安装专门的 hatch-pet skill。

在 Codex 输入框里执行:

text
$skill-installer hatch-pet

装完以后,用 Cmd+KCtrl+K 打开命令菜单,执行 Force Reload Skills。这一步是为了让 Codex 重新加载刚安装的 skill。

然后继续在 Codex 输入框里描述你想要的 Pet:

text
$hatch-pet create a new pet inspired by my recent projects

实际写的时候可以更具体一点:

text
$hatch-pet create a small pixel-style pet for long coding sessions, with clear running, waiting, and review states

生成后,回到 Settings > Appearance > Pets,刷新自定义 Pet,再选择它。

自定义 Pet 的重点不是“更好看”,而是更容易被你识别。比如长任务多的人,可以让它在运行、等待输入、可 review 这几种状态上差异明显;如果你经常开浅色页面,就不要选太淡的颜色。

看它有没有从等待变成停顿

Pet 最有价值的地方,不是告诉你“Codex 正在努力”,而是帮你发现状态变化。

比如刚开始,它显示 Codex 正在思考。这个阶段你可以切走,去写文档、看页面、整理别的材料。

过一会儿,它的状态变成“了解 GPT 模型更新”,说明 Codex 已经从泛泛思考进入具体处理。

Pet 显示 Codex 正在整理检索思路

这时候你不用马上打断它。你只需要知道:任务没有死掉,还在推进。

真正该切回来的,是这几种状态:

  • Pet 长时间不动,主窗口可能已经停住。
  • Codex 进入等待输入,需要你确认。
  • 任务从“处理中”变成“完成”,需要你验收。
  • 它准备做扩大范围的动作,比如继续深挖、引用非官方来源、写入文件、联网查更多页面。

Pet 不是审批按钮,但它能提醒你什么时候该回来审批。

长任务要配停顿点

只打开 Pet 还不够。

如果你给 Codex 一个很大的任务,又不告诉它哪里要停,它可能一路跑到最后。等你回来时,结果已经生成了,但中间有没有跑偏,你不知道。

所以我会在长任务里加一句:

text
这是长任务,我会打开 Pet 看状态。

你可以先执行,但遇到下面情况必须停下来等我:
1. 需要扩大问题范围。
2. 需要引用非官方来源。
3. 需要写入文件或修改已有内容。
4. 发现信息无法确认最新性。
5. 任务完成,等待我验收。

这段话不是为了让答案更漂亮,而是为了让 Pet 有意义。

Pet 负责把“它停了”露出来;停顿点负责规定“它为什么要停”。

不适合只靠 Pet 的任务

这几类任务不要只靠 Pet:

  • 会删除文件。
  • 会发布线上内容。
  • 会提交表单或修改真实数据。
  • 涉及账号、付款、客户信息。
  • 需要你实时看 diff。

这些任务里,Pet 最多只是提醒。真正的控制方式还是分阶段确认、看 diff、跑验证。

一句话:Pet 适合盯长任务的状态,不适合替你承担风险。

直接复制

text
这是一个长任务,我会打开 Pet 看你的状态。

请按阶段执行,不要闷头跑到底。

遇到下面情况必须停下来等我:
1. 需要扩大任务范围。
2. 需要引用不确定来源。
3. 需要写入文件或修改已有内容。
4. 需要执行有风险的命令。
5. 任务完成,等待我验收。

执行过程中如果我切走窗口,你只按当前阶段推进,不要擅自扩大目标。

Pet 的价值不是让 Codex 更强,而是让长任务不再悄悄卡住。