🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

桌面电子宠物 c-ling/dsh-plugin-pet

DeepSeek Harnessv0.1.2
c-ling11 天前有提交已提供中文文档扫描:未发现敏感能力需联网ui

DeepSeek Harness 桌面电子宠物插件:跟随 agent 状态变换心情的内置/自定义/Codex 精灵图伙伴。

32.9/100
综合分
4
GitHub 星标
80
npm 周下载
—/5
用户评分

数据截至 2026/10/23 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add dsh-plugin-pet
npm 源 · dsh-plugin-pet 的发布者账号已校验与本仓库一致

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:已验证
是什么
dsh 原生插件 · browser
装得上吗
本站已在 dsh 0.2.1-rc.2 下真实安装成功
非静态推断
L5 · 运行时冒烟等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
活跃:最近一次提交在 11 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查✓ 自动检查通过
展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✓npm 包dsh-plugin-pet @ 0.1.2
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/17 06:30:57

安全扫描自动 · 静态分析源码
v2.7.0
🟢 扫描:未发现敏感能力尚无人工评估
展开查看扫描说明与证据 ↓

静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。

发起外部网络请求
查看扫描证据(共 1 处,展示前 1 条)
  • 发起网络请求
    dist/client/PetWidget.js:38
    const response = await fetch(apiEndpoint, {
扫描于 2026/11/3(0 天前) · 范围 入口闭包 + 全包扫描 · 来源 npm 发布包

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

⚠ 该插件运行需访问外部网络 / 远程 API,部署在国内无外网环境时可能无法正常使用。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • 随agent状态变心情
  • 内置精灵图伙伴
  • 自定义精灵图导入
v2.0.02026-10-23
· v2.0.0 · 更新内容(中文) · 适配 DeepSeek Harness 0.2.1+(Web 与桌面端):全部接口迁到认证的 /api Connection 路由,实时状态改用 uiSession,移除 settingsScope / currentProvideInfo / webServer 裸路由。 · 宠物设置改为独立页面(main key pet):三页签「概览 / 外观 / 成长」,固定页头、页签行与页脚,保存动作在页签行内,按页签提交。 · 左下角头像菜单新增「宠物」入口,位于「设置」下方;移除浮层上的设置齿轮。 · 配置改为 storages/dsh-plugin-pet/config.json(版本号 + revision),支持 409 冲突与 1.x 扁平配置自动迁移;图片 / 精灵图 / 成长数据继续保留。 · 页面 UI 对齐黄金 / 快讯看板:状态胶囊、官方卡片材质、外观双列、成长双列、心情预览 chips、单状态操作栏。 · 修复概览首次加载被误判为未保存、保存状态标签冲突、菜单项插入容器错误。 · 新增 80 个 node --test 测试,覆盖 Fetch 路由、配置迁移、修订号、三页签渲染、动作栏状态与头像菜单注入。 · Changes (English) · Adapted to DeepSeek Harness 0.2.1+ (Web and Desktop): every endpoint moved to authenticated /api Connection routes, live state moved to uiSession, and the removed settingsScope / currentProvideInfo / raw webServer routes are gone. · Pet settings are now a standalone page (main key pet) with three tabs (Overview / Appearance / Growth), a fixed header/tab row/footer, save actions in the tab row and per-tab submissions. · Added a Pet entry to the bottom-left account avatar menu, directly below Settings; removed the overlay settings gear. · Config now lives in storages/dsh-plugin-pet/config.json (version + revision) with 409 conflict handling and automatic migration of the legacy flat config; image / sheet / growth data is preserved. · Page UI aligned with the Gold / News boards: status pills, official card tokens, two-column appearance / growth layouts, mood preview chips and a single-state action bar. · Fixed the overview's first-load false "unsaved" state, conflicting save badges and the menu insertion parent. · Added 80 node --test cases covering Fetch routes, config migration, revisions, three-tab rendering, action-bar states and account-menu injection.
v1.4.02026-08-23
· v1.4.0 · 更新内容(中文) · 新增:8 个内置形象——熊猫 🐼、柴犬 🐕、狐狸 🦊、兔子 🐰、企鹅 🐧、青蛙 🐸、猫头鹰 🦉、史莱姆 🟢(共 14 只) · 新增:心情联动表情系统——每只形象都会眨眼,并随心情切换眼睛(开心 ^^ / 难过八字眉 / 安睡闭眼)与嘴形(微笑 / 咧嘴笑+小舌头 / 瘪嘴) · 修复:打瞌睡不再借用难过的表情,改用专属的安睡闭眼 · 修复:有喙鸟类(鸭 / 企鹅 / 猫头鹰)不再被额外画上第二张嘴,表情由喙 + 眼睛承担;w 形嘴右半弧塌缩的问题已修复 · 变更:重绘全部原有内置形象(blob / cat / duck / robot / axolotl / ghost),统一面部几何并补充细节(腮红、高光、口鼻区等) · 测试:新增客户端一致性套件——形象 ID 与宿主白名单同步、表情组完整性、路径数据分词防粘连、中英词典 key 对齐 · Changes (English) · Added: 8 new built-in sprites — panda, shiba, fox, bunny, penguin, frog, owl, slime (14 total) · Added: mood-reactive face rig — every sprite blinks and swaps eyes (happy / sad / sleeping) and mouths (smile / grin+tongue / wobble) to match the live agent state · Fixed: sleeping now has dedicated closed eyes instead of borrowing the sad face · Fixed: beaked birds (duck / penguin / owl) no longer get a second painted mouth — expression comes from beak + eyes; also fixed a collapsed right half of the "w" mouth · Changed: redrew all six original built-ins (blob / cat / duck / robot / axolotl / ghost) with consistent face geometry and richer details (blush, highlights, muzzles) · Tests: new client consistency suite — sprite IDs stay in sync with the host whitelist, expression-group integrity, path-token anti-fusion guard, zh/en dictionary parity
v1.3.02026-08-23
· v1.3.0 · 更新内容(中文) · 新增:Codex V1 精灵图九行动作全部启用——新增 run_right / run_left(行 1/2)两个心情,拖拽宠物时按移动方向播放对应的奔跑动画(Codex Desktop 同款交互) · 新增:内置形象下拖拽宠物会播放左右翻转的奔跑动画 · 变更:设置 → 宠物 → 预览页签支持横向滑动,10 个心情页签不再溢出容器 · 变更:Codex 导入提示注明九行动作全部启用;通用自定义网格新增两个可自由映射的心情槽位 · 文档:双语 README 更新状态行映射表、使用说明与已知限制;安装 pin 全部升至 #v1.3.0 · Changes (English) · Added: all nine Codex V1 action rows are now enabled — two new moods run_right / run_left (rows 1/2) play a directional running animation while you drag the pet (same interaction as Codex Desktop) · Added: builtin sprites play a mirrored gallop animation toward the drag direction · Changed: Settings → Pet preview tabs scroll horizontally; the 10 mood tabs no longer overflow the card · Changed: Codex import hint now states that all nine rows are enabled; generic custom grids gain two freely mappable mood slots · Docs: bilingual README updates for the row mapping table, usage, and known limitations; install pins bumped to #v1.3.0
数据来自仓库的 GitHub Release,可能与插件实际版本不一致。

README

由 DeepSeek 最新模型翻译生成
dsh-plugin-pet DeepSeek Harness 0.2.1+(Web 与桌面端)的桌面电子宠物插件:由实时会话状态驱动心情动画,支持内置形象、自定义图片与 Codex 风格多帧精灵图,并带本地陪伴养成系统。 宠物常驻页面右下角,实时响应会话状态(思考 / 调用工具 / 报错 / 完成 / 等待你操作);设置不再是嵌入式面板,而是一个独立页面(main 插槽),从左下角头像菜单 → 宠物进入,布局与「黄金看板 / 快讯看板」一致。 - 双端一致:同一份客户端 bundle 运行在 Web 与桌面端(Electron),只依赖 /api 认证桥与 --dsw-alias- 主题 token。 - 独立页面:固定页头、三页签(概览 / 外观 / 成长)、页签行内的保存动作、单一滚动区与固定页脚;切页签不会跳页头。 - 头像菜单入口:在左下角账号弹窗里注入「宠物」项(0.2.1 没有菜单扩展插槽,插件以防御式 DOM 增强实现,并用 data-signed-out 与中英文 aria-label 双重识别账号菜单)。
展开完整文档(README 剩余 1 节)
dsh-plugin-pet

DeepSeek Harness 0.2.1+(Web 与桌面端)的桌面电子宠物插件:由实时会话状态驱动心情动画,支持内置形象、自定义图片与 Codex 风格多帧精灵图,并带本地陪伴养成系统。

宠物常驻页面右下角,实时响应会话状态(思考 / 调用工具 / 报错 / 完成 / 等待你操作);设置不再是嵌入式面板,而是一个独立页面(main 插槽),从左下角头像菜单 → 宠物进入,布局与「黄金看板 / 快讯看板」一致。

- 双端一致:同一份客户端 bundle 运行在 Web 与桌面端(Electron),只依赖 /api 认证桥与 --dsw-alias- 主题 token。
- 独立页面:固定页头、三页签(概览 / 外观 / 成长)、页签行内的保存动作、单一滚动区与固定页脚;切页签不会跳页头。
- 头像菜单入口:在左下角账号弹窗里注入「宠物」项(0.2.1 没有菜单扩展插槽,插件以防御式 DOM 增强实现,并用 data-signed-out 与中英文 aria-label 双重识别账号菜单)。
- 14 个内置形象(blob / cat / duck / robot / axolotl / ghost / panda / shiba / fox / bunny / penguin / frog / owl / slime,内联 SVG,纯 CSS 动画),每只都会眨眼,并随心情切换眼睛与嘴形。
- 自定义图片(PNG / JPEG / GIF / WebP;动图原样播放)。
- Codex 多帧精灵图:pet.json + spritesheet.webp(V1 1536×1872、V2 1536×2288,见 Codex pet package spec),或通用网格(列数 / 行数 / fps / 状态行 / 每行帧数)。
- 本地养成:亲密度、等级、经验、心情分布、成就、每日在线与任务统计,全部保存在本机。

结构

| 文件 | 作用 |
| lib/index.js | 宿主插件:配置 / 成长持久化 + 通过 ctx.connection.fetch 注册的认证路由 |
| lib/connection-routes.js | 零依赖 Fetch 适配层:405、请求体上限、错误信封与 Request / Response 转换 |
| lib/client.js | 浏览器 bundle(手写 factory-CJS,无构建步骤):浮层、独立页面、头像菜单入口 |
| cordis.patch.yml | bundle 层的 loader 行 |
| test/ | node --test:宿主 Fetch 路由、配置迁移、并发修订号、客户端槽位 / 页面渲染 / 菜单增强 |

本包是双面插件:宿主半边是普通 Cordis 插件;客户端半边由
"dsh": { "client": { "platform": "web", "inject": [], "immediately": true } } 加
"./client" 导出声明,由 client-modules 在启动时立即加载。

兼容性

- 目标运行时:DeepSeek Harness 0.2.1+(engines.dsh: >=0.2.1-rc.2 <0.3.0-0),桌面端与 Web profile 同一套代码。
- 1.x(DSH 1.0.7)的 settingsScope / currentProvideInfo / webServer 裸路由已全部移除;旧的扁平 config.json 会在首次读取时自动迁移。

安装

推荐按 bundle 安装(dsh.bundle + cordis.patch.yml 会插入 loader 行):

Web(推荐 bundle 模式;自动插入 loader 行)
npx @deepseek-ai/dsh plugin --profile web add "github:c-ling/dsh-plugin-pet#v2.0.0"
dsh plugin --profile web add "github:c-ling/dsh-plugin-pet#v2.0.0"

桌面端(由 Desktop 自带的 CLI 或「插件」页面管理)
dsh plugin --profile desktop add "github:c-ling/dsh-plugin-pet#v2.0.0"

本包带 dsh.bundle + cordis.patch.yml,dsh plugin add 会把它作为 bundle 层安装并自动插入 loader 行,不需要再手写;重启宿主后生效。

也可手动作为普通依赖安装,然后自行在 profile 的 cordis.patch.yml 中添加同一行(不要同时使用 bundle 与手写行):

cd ~/.dsh/profiles/web
corepack pnpm add "github:c-ling/dsh-plugin-pet#v2.0.0"

- insert:
- id: dsh-plugin-pet
name: 'dsh-plugin-pet'
config:
maxImageBytes: 5242880 # 可选:单张图片上限(默认 5 MB) maxSheetBytes: 10485760 # 可选:精灵图上限(默认 10 MB) interactionCooldownMs: 1500 # 可选:互动冷却毫秒(默认 1500,0 关闭) maxDailyInteractions: 500 # 可选:每日互动计次上限(默认 500) directory: "" # 可选:自定义状态目录(默认 storages/dsh-plugin-pet)安装后重启宿主进程(client-modules 按进程缓存包裁决):Web 端重启 dsh web,桌面端退出并重新打开应用;只刷新页面不足以加载新包。

使用

打开宠物页面

- 点击左下角头像 → 菜单中的 宠物(位于「设置」下方)。

页面包含四个页签:

| 页签 | 内容 | 保存 |
| 概览 | 当前形象与心情、等级 / 亲密度、名字 / 大小 / 显示开关、快速喂食 / 玩耍 / 抚摸 | 页签行内「保存」,只提交本页字段 |
| 外观 | 内置形象、自定义图片、Codex / 通用精灵图、心情预览 | 页签行内「保存」,只提交外观 |
| 成长 | 陪伴时长、互动次数、今日在线 / 任务、心情分布、成就 | 只读,无保存动作(页签行高度保持不变) |

页头、页签行与页脚固定,只有中间内容滚动;切换页签会重置滚动位置,重新进入页面会回到「概览」并刷新配置。

浮层

- 拖动宠物到任意位置(位置按浏览器记忆);拖动时朝移动方向播放奔跑动画。
- 单击抚摸(爱心 + 经验);双击隐藏,右下角保留爪印按钮可重新唤出;支持 Tab 聚焦后 Enter / 空格抚摸。
- 心情由实时状态推导:空闲、思考、工作中(气泡显示当前工具)、难过(出错)、等待(等你确认)、一轮完成时的庆祝;长时间空闲会打瞌睡,连续工作会提醒喝水 / 休息 / 护眼。
- 成就解锁与升级会在浮层上方弹出提示。

数据与存储

状态目录:$DSH_HOME/storages/dsh-plugin-pet/(可用 config.directory 覆盖)。

| 文件 | 内容 |
| config.json | { version: 1, revision, config: { name, size, visible, sprite } };目录 0700、文件 0600 |
| config.json.bak | 每次成功写入的同步备份 |
| stats.json / stats.json.bak | 陪伴成长统计;主文件损坏时从 .bak 恢复 |
| image.<ext> / sheet.<ext> | 上传的图片 / 精灵图原始字节 |

- 修订号:GET /api/dsh-plugin-pet/config 返回 revision;POST 可带 expectedRevision,不匹配时返回 409 { code: "stale-config", config, revision },客户端会采纳最新配置并提示重试,避免多标签页互相覆盖。
- 1.x 迁移:旧的扁平 config.json(顶层 name/size/visible/sprite)在首次读取时保留精灵图描述并改写成 2.x 信封;image. / sheet. 与 stats.json 原样继续使用。

HTTP 接口(认证 /api 桥)

| 方法 | 路径 | 用途 |
| GET | /api/dsh-plugin-pet/config | 当前配置 + revision |
| POST | /api/dsh-plugin-pet/config | 局部更新名字 / 大小 / 可见性 / 内置形象 / 精灵图 fps、状态行、帧数;支持 expectedRevision |
| GET/POST/DELETE | /api/dsh-plugin-pet/image | 读取 / 上传原始字节 / 删除自定义图片 |
| GET/POST/DELETE | /api/dsh-plugin-pet/sheet | 读取 / 上传(?source=codex&version=1\|2\|auto 或 ?source=custom&cols=&rows=&fps=)/ 删除精灵图 |
| POST | /api/dsh-plugin-pet/petjson | 导入 Codex pet.json(要求已有尺寸匹配的精灵图) |
| GET | /api/dsh-plugin-pet/stats | 陪伴成长统计 |
| POST | /api/dsh-plugin-pet/stats/heartbeat | 页面在线心跳(陪伴时长、在线时长、心情采样) |
| POST | /api/dsh-plugin-pet/stats/interaction | 喂食 / 玩耍 / 抚摸,返回经验与亲密度增益 |
| POST | /api/dsh-plugin-pet/stats/task | 完成任务成长 |
| POST | /api/dsh-plugin-pet/stats/event | 客户端检测到的成就事件(连续工作 / 修复错误) |

所有写路径都在服务端校验:魔数嗅探(PNG / JPEG / GIF / WebP)、大小上限、Codex 精确尺寸、通用网格整格切分;配置与统计写入原子化并保留 .bak。

错误响应带稳定机器码({ ok: false, code, error, params? },如 bad_json / too_large / codex_size / grid_uneven / stale-config),由客户端按当前语言翻译。成长类响应额外携带 unlockedKeys 与 levelUp;interaction 超出冷却或每日上限时返回 throttled: true 且不加值。

浏览器 直接访问这些 /api 资源也带签名会话 Cookie,因此 Web 与桌面端表现一致。

Codex 精灵图导入

1. 宠物页面 → 外观 → 精灵图 → 导入 Codex 宠物包。
2. 先上传 spritesheet.webp / spritesheet.png:必须是 1536×1872(V1,9 行) 或 1536×2288(V2,11 行),8 列网格、每格 192×208;版本自动检测。
3. 可选导入 pet.json,应用 displayName 并校验 spriteVersionNumber 与已上传精灵图一致。

Codex 行 → DSH 心情:idle→0、run_right→1、run_left→2、pet→3(waving)、happy→4(jumping)、sad→5(failed)、waiting→6、working→7(running)、thinking→8(review)、sleeping→0(复用 idle)。V1 九行动作全部启用;仅 V2 的朝向行(9/10)未使用。

通用精灵图

外观 → 精灵图 → 通用精灵图:任何宽高能被网格整除的 PNG / WebP 都可用。设置列数、行数、fps,上传后为每个心情分配行号与帧数;页面内提供实时预览。

开发与验证

node --check lib/index.js lib/client.js lib/connection-routes.js
node --test # Node >= 24:直接 node --test
python3 -m json.tool package.json
git diff --check

- 客户端 bundle 是 shell 的 factory-CJS 格式(window.__ModuleLoader__.load({ id, factory }));require("react") / require("react-dom") 由 shell 静态模块表提供,ui-primitives 缺失时自动降级为原生元素。
- 页面 UI 使用 --dsw-alias- token 与官方密度(20/28 标题、14/22 正文、12/18 提示、32px 输入、36px 按钮、44px 页签行);macOS 桌面端页头让出 --dsh-frame-top-clearance。
- 服务端测试用 new Request(...) 直接调用注册的 Fetch 处理器,断言注册键必须是 /api/...;客户端测试在 new Function 沙箱中加载 bundle,断言 factory id、inject、槽位、三页签、每页动作栏、live 状态投影与头像菜单注入。

已知限制

- 每页只有一个全局宠物(根作用域浮层),不按会话区分。
- 未实现 Codex「尾部空帧」自动检测;帧数来自规格默认值或显式配置。
- V2 精灵图的朝向行(9/10)未使用。
- 宠物位置按浏览器 localStorage 保存,不跨设备同步。
- 头像菜单入口依赖对 shell 弹窗 DOM 的防御式增强;若官方后续提供菜单插槽会改为官方注册。

License

MIT
预览分享卡片长什么样 ↓c-ling/dsh-plugin-pet
分享 · DeepSeek Harness Hub
c-ling/dsh-plugin-pet

DeepSeek Harness 桌面电子宠物插件:跟随 agent 状态变换心情的内置/自定义/Codex 精灵图伙伴。

回到顶部