Codex 现在可以放进一只自己的桌面宠物。

这篇文章记录一下我用 hatch-pet Skill 做出专属宠物 Moyu 的过程。整个流程没有想象中复杂,核心就三步:准备参考图 -> 让 Codex 做计划 -> 执行计划并检查结果

参考图可以是你已经有的头像、吉祥物、Logo 角色,也可以先让图像模型生成几版,再从里面挑一张最顺眼的。

我这次选的是一只可爱的墨鱼形象:深墨蓝外套、奶白色脸、大眼睛、青绿色发光方块。最后它被打包成了 Codex 能识别的自定义宠物。

第一步:准备参考图

参考图决定了宠物的气质。

你可以直接拿一张现成图片,也可以先用图像生成工具做几版候选。如果还没有图,可以先让 Codex 帮你生成角色草案:

1
2
3
帮我生成 5 张不同风格的可爱墨鱼卡通形象图,最后要用来做 Codex 的桌面宠物。
要求:单个角色、完整身体、轮廓清晰、适合后续做透明背景和动画。
风格可以包含 3D 玩具、扁平插画、软萌贴纸、像素游戏、国潮水墨。

如果方向已经比较明确,也可以直接给更稳定的提示词:

1
2
3
生成一个可爱的墨鱼 Codex 桌面宠物参考图。
角色是 Q 版小墨鱼,深墨蓝身体,奶白色脸,大眼睛,粉色腮红,短短的腕足,抱着一个发光的青绿色代码方块。
要求单个角色居中、完整身体、干净背景、无文字、无 logo、无水印、轮廓清晰,适合后续制作透明 PNG 和动画图集。

也可以用英文写一个更偏动画宠物的版本:

1
2
3
4
Create a cute chibi squid mascot for a Codex desktop pet.
The pet has a deep ink-blue hood-like mantle, creamy white face, large glossy teal eyes, pink cheeks, rounded short tentacles, and holds a glowing cyan code cube.
Use a soft kawaii sticker illustration style, clean silhouette, crisp outline, no text, no logo, no watermark.
Single centered full-body character, simple background, readable at small size.

挑图时,我会优先看这几个点:

  1. 角色是不是完整露出,没有被裁切。
  2. 缩小到小尺寸后,还能不能看清。
  3. 轮廓是不是干净,后续是否方便抠图。
  4. 有没有太多漂浮装饰、文字、水印、复杂阴影或复杂背景。
  5. 有没有一个稳定的“身份锚点”,比如这次 Moyu 手里的发光代码方块。

第二步:让 Codex 先做计划

选好参考图后,不建议一上来就直接生成动画。

更稳一点的做法,是先让 Codex 读取 hatch-pet Skill 的要求,然后给出一份计划。我的请求大概是这样:

1
2
3
就选这张图片来创建 Codex 宠物。
请检查 hatch-pet Skill 的要求,看看还差什么东西,然后先给我一个计划。
宠物名叫 Moyu。

hatch-pet Skill 会把“单张参考图”变成 Codex 宠物需要的完整资源包。它不是只做一张透明 PNG,而是会生成一个固定规格的动画图集:

1
2
3
${CODEX_HOME}/pets/<pet-name>/
├── pet.json
└── spritesheet.webp

其中 spritesheet.webp8 列 x 9 行 的动画图集。单格尺寸是 192x208,最终尺寸是 1536x1872。9 行分别对应 Codex 的不同状态:

状态 说明
idle 静止、呼吸、眨眼
running-right 向右移动
running-left 向左移动
waving 打招呼
jumping 跳跃
failed 失败或卡住
waiting 等待用户输入
running 正在处理任务
review 审阅或检查结果

计划阶段主要确认三件事:

  1. 使用哪张图作为 canonical reference。
  2. 宠物叫什么,内部 id 是什么。
  3. 是否允许分步骤生成每一行动作,再做 QA 检查。

第三步:执行计划

计划确认后,就可以让 Codex 开始执行:

1
2
3
4
PLEASE IMPLEMENT THIS PLAN:
使用这张参考图创建 Codex 宠物 Moyu。
按 hatch-pet 契约生成 pet.json 和 spritesheet.webp。
生成所有状态行,验证图集尺寸、透明背景、未使用格透明,并输出 QA 预览。

这一步里,hatch-pet 大致会做这些事情:

  1. 先生成一个干净的 base sprite。
  2. 用 base sprite 锁定角色身份。
  3. 分别生成每个状态的横向动画 strip。
  4. 抠掉 chroma key 背景,提取每一帧。
  5. 合成 spritesheet.webp
  6. 生成 contact sheet 和 GIF 预览做检查。
  7. 打包到 Codex 的自定义宠物目录。

Moyu 最后生成的宠物信息大概是这样:

1
2
3
4
5
6
{
"id": "moyu",
"displayName": "Moyu",
"description": "A cute squid Codex desktop pet holding a glowing code cube.",
"spritesheetPath": "spritesheet.webp"
}

最终文件会放到:

1
2
3
C:\Users\<你的用户名>\.codex\pets\moyu\
├── pet.json
└── spritesheet.webp

如果 Codex 已经打开了,可能需要重启或刷新自定义宠物列表,才能看到新宠物。

打开宠物

下面这段是我打开宠物的录屏。原始视频比较大,我压缩成了适合网页预览的版本:

打开后选择自定义宠物 Moyu,Codex 就会加载 pet.json,再读取同目录下的 spritesheet.webp

Moyu 的状态效果

下面是这次生成出来的各个状态预览。

idle:静止待机

Moyu idle

running-right:向右移动

Moyu running right

running-left:向左移动

Moyu running left

waving:打招呼

Moyu waving

jumping:跳跃

Moyu jumping

failed:失败或卡住

Moyu failed

waiting:等待用户输入

Moyu waiting

running:正在处理任务

Moyu running

review:审阅结果

Moyu review

可直接复制的完整请求

如果你想复刻这个流程,可以直接改下面这段:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
我想用 hatch-pet Skill 创建一个专属 Codex 宠物。

宠物名:Moyu
参考图:<把你的参考图路径放这里>

请按三步执行:
1. 检查参考图是否适合做宠物,如果需要,先生成或整理一张 canonical reference。
2. 基于 hatch-pet Skill 做计划,说明会生成哪些状态、输出哪些文件、如何验证。
3. 执行计划,生成 pet.json 和 spritesheet.webp,并输出 contact sheet、GIF 预览、validation.json。

要求:
- 宠物需要符合 Codex 自定义宠物契约。
- 保持同一角色身份,不要每个动作变成不同角色。
- 背景透明,未使用格完全透明。
- 不要文字、logo、水印、复杂背景、漂浮特效。
- 最终安装到 ${CODEX_HOME}/pets/<pet-id>/。

如果你还没有参考图,可以先用这段:

1
2
3
4
先帮我生成 5 张不同版本的可爱桌面宠物参考图。
主题是 <你的角色主题>,最后要用 hatch-pet Skill 做成 Codex 宠物。
要求:单个角色、完整身体、轮廓清晰、小尺寸可读、无文字、无 logo、无复杂背景。
生成后我先挑一张,再进入 hatch-pet 制作流程。

小结

这套流程最舒服的地方是:不用手动拼 72 个格子,也不用自己计算透明图集。只要先选好参考图,再让 Codex 用 hatch-pet 做计划并执行,最后拿到的就是 Codex 能直接识别的宠物包。

我的经验是,第一步参考图最重要。只要参考图身份清晰,后面的动作行就更容易保持统一。Moyu 这次的“墨鱼 + 发光代码方块”,就是一个很好用的身份锚点。


如果你也在折腾 Codex、AI 工具或者一些自动化小玩具,欢迎关注我的公众号,后面会继续记录这些折腾过程。

公众号二维码