WorkBuddy 桌宠工厂 —— 给一张角色图、一个 codex.pet 链接、一条 codex-pets.net 下载 URL、或一份现成的精灵表,就能自动创建一只可联动 WorkBuddy 状态的桌面宠物。当用户说"创建桌宠"、"做一只桌宠"、"用这张图做桌宠"、"从 codex.pet 安装桌宠"、"导入 codex 桌宠 XX"、"装一下 codex-pets.net 上的 XX&quo
WorkBuddy Pet Factory · 桌宠工厂是一项面向实际任务的技能,主要用于只要给我一张角色图、一个 codex.pet 链接或一份精灵表,就能产出一只联动 WorkBuddy 的桌宠;创建桌宠 / 做一只桌宠 / 安装桌宠;
它将相关步骤、工具调用和结果整理方式集中到统一流程中,帮助使用者更快完成目标并减少重复操作。从功能定位来看,该技能强调把分散的操作要求整理成清晰、可复用的处理流程,使用户能够围绕既定目标快速准备输入、选择执行方式并获得结构化结果。实际使用前应先确认任务范围、数据来源、运行环境、必要权限和关键参数,再依据技能说明逐步执行;若输入条件不完整,应先补齐信息或采用保守配置,避免因错误假设导致结果偏离需求。
执行过程中需要关注工具调用是否成功、接口或依赖是否可用、输出格式是否符合预期,并对异常提示、缺失字段和边界情况进行处理;涉及批量任务时,还应保存进度,避免中断后重复操作。该技能适合用于一次性任务,也可以接入自动化工作流,与其他技能或上层代理配合完成更完整的业务链路;在组合使用时,应明确每一步的输入输出关系,并避免不同步骤之间出现参数冲突。
只要给我一张角色图、一个 codex.pet 链接或一份精灵表,就能产出一只联动 WorkBuddy 的桌宠。
curl ... codex-pets.net/api/pets//download... (自动触发 import_codex.sh)~/.workbuddy/skills/workbuddy-pet-factory/ ├── SKILL.md ├── scripts/ │ ├── install_pet.py # 安装/创建(4 种来源) │ ├── import_codex.sh # 一键 codex-pets.net 导入:下载→解压→安装→启动 │ ├── wb_pet_runtime.py # 通用桌宠引擎 │ └── pet_ctl.sh # 启停/状态/列表 └── references/ # 设计参考 桌宠数据放在: ~/.workbuddy/pets// ├── pet.json # id / displayName / spritesheetPath / 可选 layout ├── spritesheet.webp # 9 行 × 8 列,每帧 192×208 └── .runtime/ ├── pet.pid └── pet.log
只要用户给了一个 codex-pets.net 上的桌宠 id(或直接粘 curl),就用这个:
SK=~/.workbuddy/skills/workbuddy-pet-factory/scripts bash $SK/import_codex.sh[ ] [--name ] [--no-start] # 示例 bash $SK/import_codex.sh xiaoba # 用默认 URL bash $SK/import_codex.sh xiaoba "https://codex-pets.net/api/pets/xiaoba/download?v=1778..." bash $SK/import_codex.sh xiaoba --name "小八"
它一键完成:下载 zip → 解压到 ~/.codex/pets/ → install_pet.py --from-codex → pet_ctl.sh start(同时自动停掉当前其它桌宠)。
触发规则:用户粘贴
curl ... codex-pets.net/api/pets/命令或说"装一下 codex-pets.net 上的 XX / 导入 codex 桌宠 XX"时,直接调/download... import_codex.sh,不要分步执行 curl + install。
PY=/opt/miniconda3/bin/python3 SK=~/.workbuddy/skills/workbuddy-pet-factory/scripts # 1) 从 ~/.codex/pets// 复制(用户已用 hatch-pet 等做好的) $PY $SK/install_pet.py --from-codex xiao-zuo --name "小做" # 2) codex.pet 网站 / 任意 spritesheet 直链 $PY $SK/install_pet.py --from-url https://codex.pet/.../spritesheet.webp --pet-id sunny --name "Sunny" # 3) 用户已有标准精灵表 $PY $SK/install_pet.py --from-sheet ~/Downloads/my_sheet.png --pet-id mochi --name "Mochi" --frame-w 192 --frame-h 208 --cols 8 # 4) 一张角色立绘(需后续用 hatch-pet 工作流生成 sprite) $PY $SK/install_pet.py --from-image ~/Pictures/cat.png --pet-id orange --name "橘子" # install_pet.py 会把图片放进 ~/.workbuddy/pets/ /reference.png # 然后 agent 必须调用 hatch-pet skill,按规格生成 spritesheet.webp 写到 pet 目录
单例原则:桌面同一时刻只保留一只桌宠在跑。
start/switch会自动把其它的停掉。当前活跃桌宠记录在~/.workbuddy/pets/.active。
SK=~/.workbuddy/skills/workbuddy-pet-factory/scripts bash $SK/pet_ctl.sh start# 召唤(会先停掉其它) bash $SK/pet_ctl.sh switch # 切换:停当前,起目标(= use) bash $SK/pet_ctl.sh stop # 退场 bash $SK/pet_ctl.sh stop-all # 所有桌宠全部退场 bash $SK/pet_ctl.sh status # 状态 bash $SK/pet_ctl.sh restart # 重启 bash $SK/pet_ctl.sh active # 当前活跃桌宠 bash $SK/pet_ctl.sh list # 列出所有桌宠(★ = 活跃)
总尺寸:1536×1872(9 行 × 8 列,每帧 192×208)
行顺序(默认布局):
| 行 | 状态 | 帧数 | 模式 |
|---|---|---|---|
| 0 | idle | 6 | loop(默认静止只画第 1 帧) |
| 1 | running-right | 8 | loop |
| 2 | running-left | 8 | loop |
| 3 | waving | 4 | once |
| 4 | jumping | 5 | once |
| 5 | failed | 8 | loop |
| 6 | waiting | 6 | loop |
| 7 | running | 6 | loop |
| 8 | review | 6 | loop |
不同行数/帧数的精灵表可在 pet.json 的 layout 字段覆盖:
{
"layout": {
"idle": [0, 4, "loop"],
"waving": [1, 6, "once"]
}
}
pollIntervalMs(默认 2000ms)读 ~/.workbuddy/workbuddy.db:sessions.status='working' → 短暂 running 后回 idlesessions.status='Pending' → 短暂 waiting 后回 idlesessions.status IN ('Completed','completed') → 一次 jumping 庆祝sessions.status='Failed' → 短暂 review 后回 idleautomation_runtime_state.running=1 → 短暂 running 后回 idleFrameless | StaysOnTop | WindowDoesNotAcceptFocus + WA_ShowWithoutActivatingsetHidesOnDeactivate_(False) / setCanHide_(False) / setCollectionBehavior_(CanJoinAllSpaces|Stationary|IgnoresCycle|FullScreenAuxiliary) / setLevel_(NSStatusWindowLevel)orderFrontRegardless()(不 activate / 不抢 key)NSApplicationActivationPolicyAccessory 让进程不进 Dock收到用户请求时:
安装类:判断来源
--from-image,之后 agent 必须调用 hatch-pet skill 把规格化精灵表写入 ~/.workbuddy/pets//spritesheet.webp ,然后从 pet.json 删掉 _needs_sprite 字段。--from-url~/.codex/pets/ 已存在的 id」→ 走 --from-codex--from-sheetpet_ctl.sh start ,告知用户位置和启停命令启停/切换类:
pet_ctl.sh start (会自动停其它)pet_ctl.sh switch pet_ctl.sh stop pet_ctl.sh stop-allpet_ctl.sh activepet_ctl.sh list故障排查:读 ~/.workbuddy/pets/ 末尾 30 行
在任何运行中的桌宠身上点右键,可以:
~/.workbuddy/pets/ 下所有已安装桌宠pet_ctl.sh switch → 当前退场,目标登场切换宠物不用打命令,纯右键就能完成。
xiaozuo-pet 是单只桌宠的硬编码版本,仍可用。workbuddy-pet-factory 安装与运行(pet_ctl.sh start ),数据放 ~/.workbuddy/pets// 。install_pet.py --from-codex xiao-zuo --name 小做 即可。相关专题
热门下载
相关下载
精品课程
共1课时 | 263人学习
共1课时 | 230人学习
共1课时 | 181人学习