dsh-desktop-pet:在 DSH Web 界面右下角养一只跟着 Agent 状态动的桌宠

前言

用 DeepSeek Harness(DSH)跑 Agent 时,Web 界面主要呈现会话与日志,长时间盯着屏幕缺少一点「任务还在跑」的直观反馈。社区插件 dsh-desktop-pet 在界面右下角加一只小宠物:没有会话在跑时待机,有会话 running 时弹跳并显示「思考中…」,从运行变为空闲时连跳并播放语音「你干嘛」。不占端口、不开服务、不发额外网络请求,适合已经在用 DSH Desktop 或带 Web 界面的 dsh profile、又想给界面加一点趣味反馈的开发者。

这是什么

dsh-desktop-pet 由维护者 XJYzhengshuai 发布,在 SkillHub 目录中归类为「趣味换装」。官方简介:A tiny desktop pet for the DeepSeek Harness Web UI — it idles, bounces while the agent works, and calls out when a task finishes.

插件分 Host 与浏览器两半:index.js 为空实现,不占用端口;动画与素材在 client.js 中以内联 base64 形式加载,与 dsh web 和 Desktop 行为一致。

核心功能

下面按 Agent 相关状态说明桌宠表现(资料来源:仓库 README)。

状态 触发条件 表现
待机 idle 没有会话在跑 轻轻呼吸起伏,影子同步缩放
思考中 working 任意会话 running === true 上下弹跳 + 轻微摇摆,头顶气泡「思考中…」和跳动的小点
完成 done 从运行中变为空闲(当前这次任务结束) 连跳五下 + 气泡「搞定啦!」,同时播放「你干嘛」语音

交互与无障碍:

  1. 点一下宠物:随时播放语音并冒出「你干嘛!」气泡;若浏览器拦截自动播放,点一下可恢复。
  2. 鼠标移到宠物上:右上角出现 ×,点击可收起(刷新页面后恢复)。
  3. 跟随 prefers-reduced-motion:系统开启「减少动态效果」时不动画,只保留状态与声音。

状态数据来自 ui-session 的标准 useSessions:遍历 byId,任一 running 即视为工作中;running 由真变假的那次渲染视为任务完成。渲染挂在 shell.overlay 槽,不往 document.body 再挂一套应用,也不读写宿主 DOM。

安装与启用

需要 DSH Desktop(或带 Web 界面的 dsh profile),以及 Node 22+(见 package.json 的 engines)。仓库已包含构建产物 client.js,无需本地编译即可从 GitHub 安装。

# 1) 直接从 GitHub 安装(本仓库已包含构建产物 client.js,无需本地编译)
dsh plugin --profile desktop add "github:XJYzhengshuai/dsh-desktop-pet"

# 或者从本地 checkout 安装(开发时用这个,link 会跟随源码改动)
dsh plugin --profile desktop add "link:<本仓库路径>"

# 2) 重启一次 DSH(bundle 层在启动时组装)

装好后右下角会出现桌宠。第一次在页面里点一下宠物,之后语音才不容易被浏览器的自动播放策略拦住。

卸载:

dsh plugin --profile desktop remove dsh-desktop-pet

典型用法与开发

日常使用无需配置项:安装并重启 DSH 后,桌宠随会话状态自动切换动作。想改交互或换素材时,可编辑 client.src.js 或替换 assets/ 下文件,再执行构建与冒烟测试:

node tools/build-client.mjs
node tools/smoke.mjs

仓库结构里,cordis.patch.yml 向 Host 插入 id 为 desktop-pet 的插件行;tools/cutout.py 用于从原图生成透明 PNG 与图标。

适用场景与注意

适合谁:已在 DSH Desktop 或 Web profile 下开发、调试 Agent,希望用轻量 UI 装饰感知「正在跑 / 刚跑完」,且接受右下角固定 overlay 的用户。

权限与安全:插件随当前 dsh 进程 加载;Host 侧虽为空实现,客户端脚本仍运行在 Web 界面上下文中。安装前建议浏览 GitHub 仓库 源码与 MIT LICENSE。代码与内联素材(pet.png、voice.mp3)均以 MIT 发布;再分发时请保留 README 中的素材来源说明。

生态说明:DSH 社区插件目录在 SkillHub 独立维护,与 DeepSeek / 幻方无官方从属关系,并非官方应用商店条目。

结尾

dsh-desktop-pet 把 Agent 会话的 running 状态映射成右下角桌宠的待机、工作与完成动画,并在任务结束时用语音提醒,实现简单、无额外网络依赖。当前仓库版本 1.0.0,GitHub 星标为 0。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

小夜