zealot00/dsh-pet 预览 preview

zealot00/dsh-pet

面向DeepSeek Harness Web UI的桌面宠物:精灵动画、代理状态联动、拖拽、闹钟和番茄钟小部件、皮肤分离

Project Overview项目介绍

dsh-pet is a DeepSeek Harness WebUI plugin that combines a desktop pet with practical utilities. It features a 5-state, 32-frame sprite animation (rendered frame-by-frame on canvas), agent task state linking, drag-anywhere positioning, alarm clock, Pomodoro timer, sticky notes, and sedentary/hydration reminders, all configurable via a right-click panel. Use it for personal productivity and companionship during long dsh sessions. Note: settings persist in localStorage per browser, and the default sprite sheet is for personal use only — not for commercial distribution.

dsh-pet 是 DeepSeek Harness WebUI 桌面宠物插件,融合宠物陪伴与实用工具:5 状态 32 帧精灵图动画(canvas 逐帧渲染)、agent 任务状态联动、闹钟、番茄钟、便签、久坐喝水提醒,全部右键面板可配。适用于长时间使用 dsh 时希望获得陪伴与计时提醒的个人用户。提示:设置存于 localStorage,跨浏览器不共享;内置默认皮肤仅供个人使用,勿商用。

Or use CLI install (for developers)或使用命令行安装(适合开发者)

CLI Install命令行安装

dsh plugin --profile web add github:zealot00/dsh-pet

zealot00/dsh-pet 加入你的 DSH 配置(web profile)即可启用。

READMEREADME

dsh-pet — 桌面宠物插件(宠物 + 实用工具)

Awesome DSH Plugin

一个 DeepSeek Harness (dsh) WebUI 客户端插件:右下角桌面宠物,宠物陪伴 + 实用工具二合一——精灵图多帧动画、agent 状态联动、自由拖拽、闹钟、番茄钟、皮肤分离。

⚠️ 皮肤版权:assets/zhuangfangyi.pngzhuangfangyi.sheet.png 为默认皮肤(来自用户提供的图片,透明化 + AI 动作帧处理)。若为游戏官方立绘/同人图,仅限个人使用,勿商用。换皮肤时请使用你有权使用的素材。

效果图

精灵图动画系统

使用场景

特性

  • 精灵图动画:5 状态 × 32 帧(idle/thinking/working/done/sleeping),canvas 逐帧渲染(无重影闪烁),帧率可调 1-32
  • agent 状态联动:agent 开始 → 思考(1.8s)→ 工作(弹跳)→ 完成(庆祝跳跃)
  • 自由拖动:pointer events 拖拽,松手自动保存位置
  • 闹钟:每天/一次两种模式;"已触发"标记持久化,重启不重复响
  • 番茄钟:工作/休息循环,宠物脚下倒计时,到点通知+宠物说话;状态持久化(墙钟时间驱动,刷新/重启不重置)
  • 便签:国风祥云告示牌(白底绿框+四角祥云),宠物侧边循环显示
  • 久坐/喝水提醒:间隔提醒(持久化防重置),到点通知+宠物说话
  • 提醒互斥:闹钟/番茄钟/提醒共用 10s 冷却,防通知轰炸
  • 右键设置面板:启用/大小/位置/透明度/皮肤下拉+预览/台词/帧率/入睡秒/闹钟/番茄钟/便签/提醒
  • 皮肤分离:素材走 /pet-assets/<文件名>,皮肤下拉选择 + 自定义输入 + 实时预览
  • 纯前端驱动:设置存 localStorage,不依赖 host settings 服务

安装

./install.sh && dsh web
# 或 DSH_PROFILE=~/.dsh/profiles/其他名字 ./install.sh

install.sh 自动:复制插件包到 profile 的 node_modules → 从 dsh 安装树复制依赖(schemastery 零依赖叶子)→ 注册插件行 → 验证 loader 解析。

包声明 dsh.bundle.patch,未来 npm 发布后可直接 dsh plugin --profile web add dsh-pet

交互

  • 左键点击:说话(随机台词气泡)
  • 右键:设置面板
  • 拖拽:任意位置
  • agent 跑任务:思考→工作→庆祝动画
  • 闲置 60s(可配):入睡;点击/拖拽唤醒

配置项(localStorage: dsh-pet:settings

字段 默认 说明
enabled / width / right / bottom / opacity true / 180 / 24 / 20 / 1 基础外观
image zhuangfangyi.sheet.png 皮肤(下拉 + 自定义)
lines 默认台词 随机台词
fps 6 精灵图帧率
sleepAfter 60 闲置入睡秒(0=禁用)
alarmEnabled / alarmTime / alarmMessage / alarmMode false / 09:00 / 默认 / repeat 闹钟(repeat=每天 / once=一次)
pomodoroEnabled / pomodoroWork / pomodoroBreak false / 25 / 5 番茄钟

项目结构

dsh-pet/
├── package.json        # dsh.client + dsh.bundle.patch
├── cordis.patch.yml    # bundle patch(插件行)
├── lib/
│   ├── index.js        # host 半部:/pet-assets 素材路由
│   └── client.js       # 浏览器半部:宠物/动画/拖拽/闹钟/番茄钟/设置面板
├── assets/             # 皮肤(zhuangfangyi.png 单图 + zhuangfangyi.sheet.png 精灵图)
├── scripts-gen-sheet.py # 程序化生成精灵图(Pillow)
├── prepare_sheet.py    # AI 动作条拆帧拼精灵图
├── deps-copy.py        # 依赖复制助手
├── install.sh / uninstall.sh
└── README.md

精灵图格式

  • 网格:32 列 × 5 行(行 = 状态:idle/thinking/working/done/sleeping)
  • 文件名含 .sheet. 即视为精灵图(如 xxx.sheet.png
  • 生成:python3 scripts-gen-sheet.py(程序化)或 python3 prepare_sheet.py(AI 动作条拆帧)
  • AI 动作条生成:gen_strips.sh(mmx + subject-ref + 自动质检重试)

卸载

./uninstall.sh && dsh web

已知说明

  • 设置存 localStorage(按浏览器);单机个人使用最佳
  • 精灵图 thinking/done 为 AI 帧,其余程序化——后续可替换更高质量动作帧
上一个 Prev dsh-save-balance-monitor 下一个 Next dsh-live2d-pet