Back to directory

dsh-pet-live2d

In a curated listMaintenance: Active

a8chann/dsh-pet-live2d

Adds a draggable Live2D pet to DSH Web GUI with session-state animations, dress-up controls, and settings.

View on GitHubHomepage
$ dsh plugin add dsh-pet-live2d

Install

dsh has no central install command — add this plugin’s entry (documented in its README) to your profile or patch config, then restart.

How installs work

72

stars

9

forks

JavaScript

Language

NOASSERTION

License

2026-09-20

Created

2026-11-04

Last push

README

dsh-pet-live2d

给 DSH(DeepSeek Harness)Web GUI 用的 Live2D 桌宠插件 —— 一只可以拖动、跟着鼠标看、点她会害羞、 还会跟着会话状态换动作与表情的桌宠。自带 DS鲸鱼娘(8 组动作 + 44 个表情/道具),装完即用。

大肥鱼 pet-live2d —— Give your AI agent a face.

Release npm downloads Stars Forks dshfind

DSH platform Cubism 5 License Last commit

拖动定位 · 视线跟随 · 摸头互动 · 会话相位 · 右键换装 · 事件穿透
20 个互斥槽位 · 摸鱼随机演出 · 双半区插件,装完即用

是什么

DSH 的 Web GUI 负责对话,而 dsh-pet-live2d 是挂在这块界面上的一只桌宠:她住在页面右下角,能拖、能缩、 跟着鼠标看,点她会有反应。更有意思的是她订阅 DSH 的真实事件(工具调用、审批请求、子代理、轮次结束……), 于是「在想」「在跑工具」「在等你批准」「出错了」这些状态会变成她的动作、表情和台词 —— 不用盯着日志看进度。

能力 原生 DSH Web GUI 装了 dsh-pet-live2d
界面陪伴 无 桌宠常驻页面,可拖动 / 缩放,位置和大小记在 localStorage
状态可视化 文字与状态点 8 个会话相位,各有一套动作 + 表情 + 台词,长任务持续播放
互动 无 摸头 / 摸尾巴 / 绕着转圈都有反应,按模型的三角面判定,不是方框
换装 无 20 个互斥槽位、44 个表情/道具,右键面板现场换,装扮跨会话保留
挡不挡 UI — 只有角色剪影吃鼠标事件,方形画布的透明处穿透到底下页面
打扰程度 — 静置才会自己演一段;平时画面上没有任何常驻 UI,鼠标划过也不显示

另有桌面端(dsh-live2d-pet-desktop/,Tauri 壳): 把同一份宠物代码放进透明置顶窗口、逐像素穿透到壁纸。Windows x64 的单文件 exe 随插件包分发(装完在设置里选「桌面」);macOS(Apple Silicon)的构建由 CI 产出, 尚未在真机验证 —— 平台支持与已知限制见它的 README。

快速上手

在 DSH 里点几下就装好了(不用命令行):

  1. 侧栏点「插件」→「添加插件」;
  2. 包名框里输入 dsh-pet-live2d,回车或点「安装」;
  3. 装完点「立即启用」—— 只关掉对话框的话,它会是"已安装但关闭",插件不会被加载;
  4. 重启一次 dsh web,她就站在那儿了(启用了 HMR 的 profile 会自己重组,重启最稳妥)。

官方插件页目前不支持自动更新:升级要在这里先卸载、再按上面装一次。

习惯命令行的话,等价的几条:

# 从 npm 装(推荐:插件和自带宠物一起下好)
dsh plugin --profile web add dsh-pet-live2d

# 或从仓库装(# 后面是 pnpm 的 path: 协议,注意那个斜杠)
dsh plugin --profile web add "github:A8Chann/dsh-pet-live2d#path:/dsh-live2d-pet"

# 或先克隆再装本地目录
git clone https://github.com/A8Chann/dsh-pet-live2d
dsh plugin --profile web add "link:./dsh-pet-live2d/dsh-live2d-pet"

仓库根目录没有 package.json:可安装的包在子目录 dsh-live2d-pet/ 里,所以从 Git 装必须带 #path:/dsh-live2d-pet。从 npm 装不用管这些。

装完之后会发生什么:

  1. 宠物随包自带。插件包里就带着那只鲸鱼娘,第一次运行时宿主半区把它复制进 %DSH_HOME%\pets\, 重启 dsh web 就能看见。只在目标不存在时复制,或者内容与随包分发的那份逐字节相同时才同步升级 —— 你自己改过的那份一个字都不会动。
  2. Cubism Core 不用手动装。live2dcubismcore.min.js 是 Live2D 株式会社的专有运行时,不能随插件分发; 插件第一次用到它时去 Live2D 官方 CDN 取一份(校验过再发出去),缓存到 %DSH_HOME%\pets\.runtime\,之后离线也能用。
  3. 重启 dsh web。bundle 不做热重载,重启之后她就站在那儿了。
项目 要求
DSH >= 0.1.5-rc.1,装在 web profile 上
浏览器 支持 WebGL 的现代浏览器(无头 Edge / Chrome 也跑得动,见回归测试)
操作系统 跟着 DSH 走:Windows / macOS / Linux 是同一套 Web 端代码
网络 只在第一次取 Cubism Core 时需要外网;取不到就按 FAQ 手动放一份
dsh plugin --profile web update dsh-pet-live2d   # 升级(宠物默认值会一起同步)
dsh plugin --profile web remove dsh-pet-live2d   # 卸载(%DSH_HOME%\pets\ 里的宠物不会被删)

怎么玩

  • 拖动 / 缩放:拖到哪就是哪,大小从 160px 到 760px(默认 300px,右键面板底部的滑杆调), 两者都记在 localStorage,重启还在。
  • 右键面板:呼出「动作」「装扮」两个页签 + 大小滑杆 + 「归位」。面板跟随 DSH 的浅色 / 深色主题。
  • 跟着鼠标看:视线和头部跟着指针走,移开(或窗口失焦)自动回正。
  • 点击反应:点头部才挥锤撒娇,点身上其它地方只出气泡 —— 判定读的是模型自己的几何 (当前帧变形后的三角面 + 作者在 cdi3 里写的部件名),不是画出来的区域。
  • 事件穿透:只有角色剪影吃鼠标事件,方形画布的透明处穿到底下的页面,不挡 DSH 的 UI。
  • 都会自己收尾:动作、定格、表情到点全部回到初始待机,不会卡住。
  • 待机摸鱼:静置一会儿会自己随机演一段(不会演「点击」「出错」这类专属动作)。
互动 怎么触发 默认反应
摸头 点在头部(含头发、耳朵等 21 个部件) 重锤出击 / 问号 / 星星眼 随机一个,不脸红
摸尾巴 点在看得见的鲸鱼尾鳍上(按贴图认那 5 块 drawable,可点区域跟着尾鳍摆动走) 吐魂 / 问号 随机一个
转圈转晕 鼠标绕着她转圈(默认 2 圈、1.6 秒内) 演「晕晕」

三个互动各自可开关,反应也能改;共用的三句台词在设置页的「气泡」卡里。

右键面板:动作 / 装扮两个页签,底部是大小滑杆与归位
右键呼出面板:「动作 8」是模型自带的动作,「装扮 20」是 20 个互斥槽位;底部是大小滑杆和「归位」

六种造型:默认待机 / 爱心眼 / 星星眼吐舌 / 调皮猫猫手 / 重锤出击 / 挤番茄酱
同样的她,换一套槽位就是另一个样子(44 个表情/道具里的一小部分)

跟着会话走

她订阅的是 DSH 的真实事件,不是猜的:

相位 thinking tool waiting asking helper queued done failed
什么时候 模型在想 / 刚开工 在调工具 有操作等你批准 它问了你一句、等你回答 起了子代理 你发的话排队了 这一轮说完 出错了

Read the full README on GitHub →

DSH Plugins is an independent community directory of DeepSeek Harness plugins. Not affiliated with or endorsed by DeepSeek. Third-party plugins are not security-audited — review the source before installing.

New DeepSeek Harness plugins, weekly. No spam.