Just for Fun
dsh-pet-zhuangfangyi
zealot00/dsh-pet-zhuangfangyi · ★ 1
DeepSeek Harness WebUI desktop pet plugin (chibi pet with idle animation & click
README body is shown in Chinese.
安装
dsh plugin --profile web add github:zealot00/dsh-pet-zhuangfangyiGitHub 源码安装:首次需按提示配置 allowBuilds 构建授权后重试
For install and environment setup, plus plugin development tutorials, see DSH community docs ↗
README
Table of contents
一个 DeepSeek Harness (dsh) WebUI 客户端插件:在 WebUI 右下角显示一个 Q 版桌面宠物,带闲置浮动动画和点击互动(说话气泡)。
⚠️ 素材版权提示:当前宠物形象来自你提供的图片(透明化处理后内嵌在
lib/client.js)。
- 若是《明日方舟:终末地》等游戏官方立绘/同人图,请仅限个人使用,勿商用分发;
- 分享给朋友个人使用没问题,但不要在公开平台上传/传播源图。
- 想换素材:把透明背景 PNG 放到
assets/pet.png,跑python3 scripts-build.py,再重新安装。
快速安装(给拿到压缩包的小伙伴)
# 1. 解压后进入目录
cd dsh-pet-zhuangfangyi
# 2. 一键安装(默认装到 ~/.dsh/profiles/web)
./install.sh
# 如果你的 profile 不是 web:
# DSH_PROFILE=~/.dsh/profiles/其他名字 ./install.sh
# 3. 重启 dsh
dsh web # 或你平时的启动命令
# 4. 打开 http://127.0.0.1:3080 → 右下角出现宠物
安装脚本做了什么:
- 把插件包复制到 profile 自己的
node_modules/@dsh-local/pet-zhuangfangyi/(注意:必须是 profile 的 node_modules,不是 npx 缓存目录——插件由 loader 从 profile 目录解析); - 在
cordis.patch.yml注册插件行(原文件自动备份为.bak.<时间戳>); - 提示你重启 dsh。
卸载
./uninstall.sh && dsh web
更换宠物形象
- 准备一张透明背景 PNG(建议宽 420px,可先用在线抠图工具处理);
- 覆盖
assets/pet.png; python3 scripts-build.py重新生成lib/client.js(内嵌 base64);- 重新
./install.sh并重启 dsh。
自定义台词与大小
- 台词:编辑
lib/client.js里的LINES数组; - 大小:编辑
lib/client.js里 CSS 的width:195px; - 位置:编辑
right:24px;bottom:20px。
改完同样要重新 install + 重启。
项目结构
dsh-pet-zhuangfangyi/
├── package.json # dsh.client 元数据(platform: web)
├── lib/
│ ├── index.js # node 半部(最小 Cordis 插件,占位)
│ └── client.js # 浏览器半部:宠物 DOM/CSS/动画/交互(素材 base64 内嵌)
├── assets/
│ └── pet.png # 透明背景素材(换素材就改这个)
├── scripts-build.py # 换素材后重新生成 client.js
├── install.sh # 一键安装
├── uninstall.sh # 卸载
└── README.md
工作原理(给好奇的小伙伴)
- 包的
package.json声明dsh.client,被 host 的dsh-client-modules扫描识别为浏览器插件; - 插件行注册在 profile 的
cordis.patch.yml; - 浏览器半部用
window.__ModuleLoader__.load({ id, factory })格式打包,经/plugins/<包名>/client.js提供给前端; - 宠物:
position: fixed右下角 + CSS 动画(闲置浮动 / 点击跳跃)+ 随机台词气泡; - 改
lib/client.js后只需刷新浏览器即可生效(dsh-client-modules每次请求都读文件,无需重启);但改插件行/装新包需要重启 dsh。
交互
- 闲置:上下浮动 + 轻微摇摆(4.2s 循环)
- 点击:跳跃 + 弹出随机台词气泡(2.2s 后消失)
- 暗色主题自动适配气泡配色