芥末
发布于 2026-05-03 / 0 阅读
0
0

OpenAI Codex 桌面宠物:用 hatch-pet 自定义 AI Agent 状态提醒

OpenAI Codex 新增的桌面宠物,看起来像一个怀旧的小玩具:它会悬浮在桌面上,可以被拖动,也会做出挥手、等待、奔跑、失败等动画。但它真正解决的问题,不是“让桌面更热闹”,而是让 AI Agent(人工智能代理)的后台状态更容易被看见。

使用 AI 编程工具时,一个常见麻烦是:把任务交给模型后,开发者经常要切回工具窗口确认它在做什么。它可能还在分析代码,也可能已经完成任务,或者停在某个需要人工确认的步骤。如果当前正在浏览文档、写需求、查资料,这种反复切换会打断工作流。

Codex 桌面宠物把这个状态提醒做成了一个全局悬浮的小组件。无论当前打开的是浏览器、编辑器还是聊天工具,它都可以停留在屏幕上方,用动作和气泡告诉你 Codex 的进度。

flowchart LR
    A[开发者发起 Codex 任务] --> B[Codex 后台执行]
    B --> C{任务状态变化}
    C -->|思考中| D[宠物显示等待/思考动画]
    C -->|需要输入| E[宠物弹出提示气泡]
    C -->|任务完成| F[宠物提示完成]
    E --> G[点击宠物直接回复]
    G --> B

这类设计可以理解成 AI 编程工具里的“桌面灵动岛”:它不负责生成代码,但负责把后台任务的状态带到当前工作区。

Codex 桌面宠物是什么

Codex 桌面宠物是 Codex 客户端里的一个全局悬浮伴侣。它有两层作用:

作用说明
状态显示用动画和气泡展示 Codex 当前是在思考、等待、执行、失败还是需要确认
轻量交互在宠物弹出消息时点击它,可以直接进入回复通道,不必切回完整窗口

它和一些终端里的像素小挂件不同,Codex 的桌面宠物不是只显示在终端窗口内部,而是以全局悬浮层的形式出现在桌面上。也就是说,切换到其他应用后,它仍然可以停留在屏幕角落。

Codex 的设置页里可以找到宠物相关配置,入口位于外观设置区域。

Codex 外观设置里的宠物配置入口

这里的核心配置包括选择内置宠物、切换宠物外观,以及管理自定义宠物。对于只想快速使用的人,直接选一个内置形象即可;如果希望把某个角色、图标或项目 mascot 做成桌面宠物,就需要用到自定义生成能力。

内置宠物:用固定角色覆盖常见工作状态

Codex 默认提供了多款像素风宠物。它们不是简单的静态图片,而是一组可以表达不同状态的动画资源。

宠物风格定位
Codex默认伙伴形象
Dewey小鸭子,适合平静工作氛围
Fireball火球形象,适合快速迭代场景
Rocky石头形象,适合大型 diff 或长任务
Seedy小绿芽,偏向新想法和探索
Stacky堆叠形象,适合深度工作
BSODBSOD(Blue Screen of Death,蓝屏死机)风格的小捣蛋鬼
Null Signal安静、低干扰的虚空信号风格

内置宠物适合直接使用,但更有意思的是自定义宠物。Codex 提供了 hatch-pet Skill,可以把输入图片或文字描述转换成一套完整的动画宠物资源。

自定义宠物的核心机制

自定义宠物不是只生成一张头像。Codex 会围绕一个主形象,生成多种状态下的动画帧,再把它们打包成本地可用的宠物资源。

常见状态包括:

状态用途
idle空闲状态
waiting等待用户输入或等待后台结果
running执行任务中
running-left / running-right左右移动动画
waving打招呼或提示
jumping强提示或活跃动作
failed任务失败或出错
review需要检查、确认或审阅

每个状态通常由 4 到 8 帧图片组成。多帧图片连续播放后,就形成了像素宠物的动作。

flowchart TD
    A[输入提示词或上传图片] --> B[生成主形象]
    B --> C[扩展不同动作状态]
    C --> D1[idle 4-8 帧]
    C --> D2[waiting 4-8 帧]
    C --> D3[running 4-8 帧]
    C --> D4[waving 4-8 帧]
    C --> D5[failed 4-8 帧]
    C --> D6[review 4-8 帧]
    D1 --> E[合成为宠物资源包]
    D2 --> E
    D3 --> E
    D4 --> E
    D5 --> E
    D6 --> E
    E --> F[保存到本地宠物目录]
    F --> G[在 Codex 设置中选择使用]

生成过程中,Codex 会先得到一个稳定的主视觉,然后基于这个形象继续生成不同动作。这样做的好处是角色不会在各个状态之间变化太大,否则 idle 还是一只鸭子,running 就变成另一只鸭子,动画会显得割裂。

生成状态帧时,可以看到 Codex 逐步创建多组动画素材。

Codex 生成不同宠物状态帧

这些状态帧是自定义宠物的基础。每一行或每一组图片都对应某个动作状态,Codex 后续会把它们组织成可播放的动画资源。

使用 hatch-pet 生成自定义桌面宠物

自定义宠物依赖 hatch-pet Skill。Skill 可以理解成 Codex 的能力包,里面定义了某类任务的执行流程、约束和输出格式。

hatch-pet Skill 的公开仓库地址是:

https://github.com/openai/skills/tree/main/skills/.curated/hatch-pet

在 Codex 里使用自定义宠物,大致分为三步。

安装 hatch-pet Skill

在 Codex 中安装 hatch-pet Skill,命令形式通常类似:

$Skill Installer hatch-pet

安装后,Codex 会从 OpenAI 的 Skill 仓库拉取对应说明和流程文件。这个步骤的意义是让 Codex 知道:生成宠物不是普通画图任务,而是要输出一套可被桌面宠物系统识别的多状态动画资源。

安装 hatch-pet Skill

安装完成后,Codex 就可以识别 hatch-pet 相关指令,并按照 Skill 里的流程生成资源。

输入宠物描述

安装完成后,可以直接用 hatch-pet 指令描述想要的宠物。例如:

$hatch-pet 做一个像素风桌面宠物:一只戴耳机、拿键盘的小鸭子

也可以用更具体的描述控制风格:

$hatch-pet 做一个 32-bit 像素风桌面宠物,主体是一只蓝色机器人,动作要活泼但不要遮挡屏幕,适合放在 macOS 桌面右下角

提示词越明确,生成结果越稳定。建议描述以下信息:

提示词要素示例
主体小鸭子、机器人、项目吉祥物
风格像素风、复古游戏、低饱和、扁平化
动作气质安静、活泼、搞怪、专注
使用位置桌面右下角、Dock 上方、屏幕边缘
限制条件不要太大、不要复杂背景、轮廓清晰

Codex 收到指令后,会开始生成主图和状态帧。

使用 hatch-pet 指令生成自定义宠物

这个过程可能比较耗时,因为它不是生成单张图片,而是生成多组动画帧。资源消耗也会高于普通文本任务,如果连续生成多个宠物,可能很快触发额度限制。

选择并启用宠物

生成结束后,Codex 会把宠物资源保存到本地。之后可以在设置页里选择该宠物,或者通过指令快速召唤。

/pet

如果是从社区下载的宠物包,一般流程是:

下载宠物 zip 包
解压到 Codex 指定的宠物目录
打开 Codex 设置
进入外观 / 宠物配置
选择新导入的宠物

如果设置页显示了具体目录,应以客户端显示路径为准。不要随意把第三方压缩包解压到系统敏感目录,也不要运行来源不明的脚本。宠物包理想情况下只应包含图片资源和配置文件。

导入并选择自定义宠物

完成导入后,宠物就会出现在可选列表里。选择后,它会作为全局悬浮组件显示在桌面上。

宠物如何表达 Codex 的后台状态

桌面宠物的实用价值主要来自状态映射。Codex 后台任务的状态会被转换成不同动作或提示气泡,用户不用打开完整窗口也能知道任务进展。

Codex 状态宠物表现用户动作
正在分析任务等待、思考、挠头等动画可以继续当前工作
正在执行running 或忙碌动画等待结果
任务完成气泡提示完成点击查看或继续
需要确认气泡提示需要输入点击宠物回复
出错或失败failed 动画或错误提示返回 Codex 查看原因

这种设计降低了 AI 编程工具的“窗口占用感”。开发者可以把 Codex 放在后台跑任务,同时在其他应用里继续处理上下文资料。

桌面宠物通过气泡提示 Codex 状态

气泡提示不只是通知。如果当前状态需要人工输入,点击宠物可以打开一条轻量回复通道,让用户直接给 AI Agent 补充信息。

sequenceDiagram
    participant U as 用户
    participant C as Codex
    participant P as 桌面宠物

    U->>C: 提交代码修改任务
    C->>C: 分析项目与生成 diff
    C-->>P: 更新状态为运行中
    P-->>U: 显示运行动画
    C-->>P: 需要确认某个选择
    P-->>U: 弹出气泡提示
    U->>P: 点击并回复
    P->>C: 转发用户输入
    C->>C: 继续执行任务
    C-->>P: 任务完成
    P-->>U: 提示完成

点击宠物后进入回复通道

这就是桌面宠物和普通通知的区别。普通通知只告诉你“发生了什么”,而 Codex 宠物可以把“提醒”和“回复”放在同一个入口里。

适合使用的场景

桌面宠物并不适合所有工作流。它对长时间后台执行、多任务切换、语音或自然语言驱动的开发方式更有帮助。

场景是否适合原因
让 Codex 长时间分析项目、修改代码适合可以在不切窗口的情况下看到进度
一边查资料一边等待 AI 结果适合全局悬浮提醒能减少来回切换
需要频繁给 AI Agent 补充确认适合点击宠物即可回复
只在终端里短命令调用 AI不一定适合状态变化很短,悬浮组件意义不大
屏幕空间很小或要求极简桌面不太适合悬浮元素可能造成视觉干扰
对第三方角色版权有严格要求的团队谨慎使用自定义宠物可能涉及形象授权问题

如果团队要在正式环境推广,建议使用内部项目 mascot、抽象图标或原创角色,避免直接使用受版权保护的影视、游戏、动漫角色。

自定义宠物的生成建议

hatch-pet 可以用很短的提示词生成宠物,但想要稳定结果,最好把提示词写得像资源需求,而不是随口一句描述。

可以使用这种模板:

$hatch-pet 生成一个桌面宠物:
主体:一只橙色像素风小狐狸
风格:16-bit 复古游戏风,轮廓清晰,没有复杂背景
动作:空闲时轻微摇尾巴,提示时挥手,失败时低头
尺寸感:适合放在桌面右下角,不要遮挡应用内容
用途:作为 Codex 后台任务状态提醒

更适合桌面宠物的形象通常有几个特点:

特点说明
轮廓清晰小尺寸显示时仍能看出主体
色块简单像素动画不容易糊成一团
动作幅度适中不会过度干扰工作
没有复杂背景方便悬浮在各种桌面内容上
状态差异明显用户能快速分辨等待、完成、失败

不建议在提示词里塞太多细节。桌面宠物显示尺寸有限,复杂服饰、文字、微小配件很容易在缩放后丢失。

社区宠物包怎么用才安全

PetShare、Petdex 这类社区站点可以下载别人做好的宠物包。它们降低了上手成本,但导入第三方资源时要注意安全边界。

推荐检查三件事:

检查项说明
文件类型理想情况下只包含图片、JSON、配置文件等资源
是否有脚本不要执行来源不明的 shell、Python、Node 脚本
来源可信度优先选择公开社区里有展示、评分或源码说明的资源

宠物包的价值在于视觉资源,不应该要求用户授予额外权限。如果一个包要求执行安装脚本、修改系统配置或访问敏感目录,就需要谨慎处理。

Codex 的另外两个配套更新

桌面宠物吸引注意力,但 Codex 近期还有两个偏生产力的功能:配置迁移和听写词典。它们都围绕一个目标:减少用户在不同 AI 编程工具之间切换时的摩擦。

自动检测并导入其他 AI 编程工具配置

Codex 可以检测本机是否存在其他 AI 编程工具留下的配置文件,例如 Claude Code 常见的 CLAUDE.md。如果检测到项目约定、插件说明或自定义规则,Codex 会建议导入。

Codex 检测并导入其他 AI 编程工具配置

这类功能解决的是迁移成本。很多开发者会同时使用多个 AI 编程工具,不同工具之间往往都有自己的项目说明文件和行为规则。如果每次换工具都要重新复制约定,容易遗漏细节。

可以把它理解成下面的流程:

flowchart LR
    A[扫描项目目录] --> B{发现 AI 工具配置}
    B -->|CLAUDE.md 等文件| C[解析项目约定]
    B -->|未发现| D[保持默认配置]
    C --> E[展示可导入内容]
    E --> F{用户确认}
    F -->|确认| G[导入到 Codex 配置]
    F -->|取消| H[不修改当前设置]

导入前仍然建议检查内容,尤其是团队项目里的规则文件。因为这些文件可能包含特定工具的提示词格式,直接迁移后不一定完全适配 Codex。

听写词典:让语音输入更懂专有名词

Codex 还新增了听写词典,用于预先录入常用缩略语、项目名、函数名或技术短语。

Codex 听写词典配置

语音驱动 AI 写代码时,专有名词经常被误识别。例如:

想输入可能误识别成
RAGrack、rag
pnpmp n p m、npm
Next.jsnext j s、next just
Zustandzoo stand
LangGraphland graph

听写词典的作用是提前建立“发音或短语 → 标准写法”的映射。对于习惯口述需求的人,这可以减少重复纠错。

示例词条可以这样设计:

RAG => RAG
pnpm => pnpm
Next JS => Next.js
Lang Graph => LangGraph
Zustand => Zustand
CLAUDE dot md => CLAUDE.md

它不直接提升模型的代码能力,但能减少输入层面的噪声。语音识别结果更准确,AI Agent 拿到的任务描述也就更少歧义。

桌面宠物背后的产品逻辑

AI 编程工具越来越像后台协作者,而不是一次性问答窗口。只要 AI Agent 开始处理长任务,用户就会遇到三个问题:

问题传统处理方式桌面宠物方式
不知道任务是否还在运行切回窗口查看悬浮动画显示状态
不知道何时需要确认等通知或轮询窗口气泡提示
回复路径太重打开完整应用窗口点击宠物轻量回复

桌面宠物把这些状态做成了低成本的可视化入口。它不替代编辑器,也不替代聊天窗口,而是补上“后台任务感知”这一层。

从开发工具角度看,它的价值可以概括为三点:

  1. 减少上下文切换:用户不用频繁回到 Codex 主窗口确认进度。
  2. 降低等待焦虑:动画状态比空白等待更明确,知道它在运行还是卡住。
  3. 建立持续入口:宠物一直在桌面上,Codex 的存在感不依赖单个窗口。

这也是为什么“可爱”并不是完全无关的装饰。对于高频使用的 AI 工具,界面反馈、状态感知和情绪缓冲都会影响用户是否愿意长期把它放进工作流。

使用时需要注意的坑

生成成本不低

自定义宠物会生成多种状态和多帧动画,消耗通常高于普通文本任务。连续生成多个角色时,可能较快触发额度限制。更稳妥的方式是先写好提示词,一次生成一个质量较高的版本,而不是用模糊提示反复试错。

状态动作不要过于夸张

桌面宠物长期悬浮在屏幕上,如果动作太大、颜色太刺眼,很容易干扰阅读和编码。适合生产力工具的宠物应该“能被注意到,但不会抢走注意力”。

第三方宠物包要检查内容

社区资源适合快速体验,但不要执行不明脚本。导入前检查压缩包内容,确认它主要是图片和配置资源。

角色形象可能涉及版权

把知名动漫、影视、游戏角色做成个人桌面宠物,和公开分发宠物包不是一回事。如果要分享给团队或发布到社区,更建议使用原创形象、开源授权素材或内部品牌允许使用的 mascot。

配置迁移不能完全无脑导入

从其他 AI 编程工具导入配置时,要检查规则是否仍然适合 Codex。不同工具对提示词、上下文、插件机制的理解不完全相同,直接迁移可能带来行为偏差。

小结

Codex 桌面宠物表面上是一个像素风小组件,本质上是 AI Agent 的全局状态层。它用动画和气泡显示后台任务进度,用点击交互承接用户回复,再通过 hatch-pet Skill 把自定义角色生成流程标准化。

如果只是偶尔让 AI 改几行代码,它可能只是一个有趣装饰;如果经常把长任务交给 Codex,在多个应用之间切换工作,它就能减少查看进度、等待确认和返回回复的成本。配合配置迁移、听写词典这类能力,Codex 正在从单一编码助手变成更贴近桌面工作流的 AI 开发环境。


评论