Codex 风格桌面宠物:右下角悬浮动画精灵,随 agent 运行状态实时变化(工作、等待、报错、完成)。
安装
# GitHub 源码(首次需按提示配置 allowBuilds 构建授权后重试)
dsh plugin --profile web add github:minybear/DeepSeek-Harness-Pet
GitHub 来源的插件在安装时会在你的机器上执行构建脚本。请只安装可信来源,并尽量锁定 commit(github:owner/repo#sha)。
README
Codex 风格的「桌面宠物」DSH 客户端插件:在 DeepSeek Harness(DSH)Web GUI 里漂浮一只动画小宠物,由当前会话的 agent 运行状态实时驱动(工作 / 等待输入 / 报错 / 刚完成 / 待机)。
复刻对象:OpenAI Codex 桌面版的 Pets 功能。调研结论见
docs/Codex-Pet-能力分析.md与docs/复刻方案.md。
能力
漂浮宠物:注册进 DSH 的
shell.overlay槽(帧级浮动层,可点透,右下角常驻)。状态驱动:读当前会话状态并映射到 Codex 的 9 状态动画行:
DSH 信号 宠物状态(行) 状态标签 running === truerunning(7) Working pendingInteractionwaiting(6) Needs input lastAgentErrorfailed(5) Blocked running true→false边沿jumping(4) Done!(约 2.6s) completed且未选review(8) Ready 无活动 idle(0) (无) 交互:
- 点击 → 弹出菜单:🍗 喂食(
eat)、🎾 玩耍(play)、⚙ 尺寸/透明度设置。 - 拖拽 → 移动宠物位置(
drag姿态,位置持久化到 localStorage)。
- 点击 → 弹出菜单:🍗 喂食(
外观设置:尺寸(0.5–1.5)、透明度(0.2–1),持久化到
localStorage。Codex 兼容包格式:宠物由
pet.json(id/displayName/description/spritesheetPath/frame/animations)+ 一张行优先图集(无独立 atlas 文件,帧索引index = row×columns + col)描述;内置默认宠物在运行时用 canvas 生成。前 9 行为 Codex V1 官方 9 状态,第 9–11 行为交互状态(eat/play/drag),经官方frame覆写(96×104×8×12)与animations字段声明。
结构
lib/pet-core.js 纯逻辑(Node 可测):pet.json 解析 + 帧切片 + 状态机
lib/index.js host 侧 apply(空,纯 UI 插件)
lib/client.js 浏览器侧:window.__ModuleLoader__.load + apply/inject + PetOverlay + 精灵生成
test/*.test.mjs Node 单测(pet-core + client 契约)
docs/ 调研与方案
测试
node test/pet-core.test.mjs
node test/client-contract.test.mjs
安装到 DSH
# 从 npm(发布后)
dsh plugin --profile web add @minybear/dsh-pet
# 或一条命令装本地 checkout(包自带 dsh.bundle.patch 自注册)
dsh plugin --profile web add .
# 或从 GitHub
dsh plugin --profile web add github:minybear/DeepSeek-Harness-Pet
然后重启 dsh web 并刷新页面,宠物应出现在右下角。离线环境或无需 pnpm 时,用 deploy\install.ps1 手动装;完整步骤见 INSTALL.md。
注:客户端插件需宿主端打包(
dsh.client.inject)与重启后生效。
链接
同类插件
Nagi-ovo/dsh-ads★ 318
2005 年中文站点风格的整活广告插件:侧栏广告/信息流/角落弹窗 + 假关闭叉,素材全虚构。
vlln/whale-girl★ 121
桌面宠物(QQ 宠物形态):右下角悬浮、可拖拽/投喂/玩耍。
omdsh-dev/dsh-gomoku★ 12
与 AI 下五子棋,也可让 AI 对局比棋力。
lhh010/dsh-minigames★ 12
右侧小游戏面板:18 款离线小游戏,等模型回复时的摸鱼神器。
AnacondaKC/dsh-stock-market★ 11
有效解决了写代码的时候账户不能同时亏钱的 BUG。
hellodigua/dsh-emoji★ 11
为 AI 回复自动添加表情。