dsh-pet
PC2005-cloud/dsh-petDSH Web UI 桌面宠物:25 个透明动画、屏幕漫游、点击反应与拖拽,附可复现的素材生成链。
鲸鱼娘桌宠:45 项成就、每日任务与周签到、三个小游戏、92 张立绘、620 条台词、成长日记、天气与节日反应、按工具类型切换工作姿态、跨端存档导出/导入(JSON 文件或迁移码)、无障碍模式,以及可选的 MiMo TTS 台词播报。数据只存放在宿主 localStorage,无遥测;已在 DSH 桌面端 0.2.0-rc.2 验收,兼容 0.2.1-rc.1/rc.2 与旧版 0.1.x Web。
DeepSeek Harness 的桌宠看板娘:安静陪你写代码,工作一开始她就抱起笔记本,绝不插嘴。
一分钟上手 · 看看她长什么样 · 她有什么 · 常见问题 · English
大部分桌宠要么只是「会动的图」,要么会在你专注时抢注意力。鲸鱼娘的三条硬规则:
原则 · 具体做法 不打断你 · 工作态(有工具在跑)绝不弹话、不乱切姿势;所有闲聊、关怀、播报都只在待机时发生 不抢你的焦点 · 默认是纯装饰:aria-hidden、不拦截键盘、不覆盖业务 DOM、不改任何内置包文件;连焦点都要你主动开无障碍模式才拿得到 不给你添隐私负担 · 无遥测、不上传、默认零外部请求;台词播报、关键词感知、余额、无障碍这些会读内容/金额的功能全部默认关闭
而且她是真的会看你在干什么:不是定时随机换图,而是读取宿主的结构化标记(工具卡状态、会话运行标记、终端块)来判断你在忙什么,再决定摆哪个姿势、要不要闭嘴。
最简:从 npm 装(不需要 git ls-remote 预检,网络受限时更稳):
# 桌面端(Electron 壳)——把路径换成你的安装位置
$Desktop = "D:\DeepseekHarnessDesktop"
$Cli = "$Desktop\resources\app.asar\dsh\node_modules\@deepseek-ai\dsh-desktop-host\lib\cli.js"
$env:ELECTRON_RUN_AS_NODE = "1"
& "$Desktop\DeepSeek Harness.exe" --expose-internals $Cli plugin --profile desktop add dsh-whale-musume# 旧版 Web profile
dsh plugin --profile web add dsh-whale-musume也可以继续从 GitHub 源装(等价;想跟 main 最新提交时用这个):
dsh plugin --profile web add github:Sutera-Diffusus/dsh-whale-musume装完重启宿主(桌面端重启应用;旧版 Web 重启 dsh web 后 Ctrl+F5),她就出现在右下角了。
镜像同步提示:新包在 npmmirror 上可能短暂显示0.0.0-stage(发布占位版本)。看到这个版本不要装;在插件管理器的 Registry 选择器切到 npm 官方源,或等镜像同步。官方源核验:npm view dsh-whale-musume version --registry=https://registry.npmjs.org应为2.5.0。
从插件市场或dsh plugin add装不上时,见安装失败排查。日志被截成只剩[exit 1]、走 git 源时的git ls-remote超时、还有allowBuilds提示,那一节都写了。
装完怎么确认她真的进来了?
在宿主页面按 F12 打开控制台,执行:
window.__dshWhaleMusumeBooted // true
document.querySelectorAll('[data-dsh-whale-root]').length // 1
getComputedStyle(document.querySelector('[data-dsh-whale-root]')).display // "block"(首页可见)
window.__dshWhaleMoeDebug // state 非 "hidden",含当前姿势/视图等信息四项都对说明安装成功。任一项不对,见故障排查。
另有一种脚本安装(注入前端资源 + 自带备份回滚),只适合主题集成或没有组合包支持的旧环境:见 scripts/apply-theme.mjs。两种方式二选一,不要混用。待机陪伴 · 工作状态联动 · 默认悬浮在右下角,随机喝咖啡、伸懒腰 · 检测到工具运行,抱起笔记本,带淡蓝光晕
摸头互动 · 投喂互动 · 单击摸头,脸红立绘 + 爱心星星飞出 · 右键投喂,提升饱食度与好感度
悬浮形态(可拖拽) · 立绘总览(90+ 张) · 200px 默认尺寸,拖到她喜欢的地方 · 状态 / 互动 / 成长 / 游戏 / 天气 / 节日 / 梗表情
更多素材:交互动作总览 · 新增立绘总览 · 宣传海报 v1 / v2 / v3 / v4
特性 · 说明 悬浮 / 侧栏 / 底栏 / 迷你 / 自动 · 五种形态,按视图自动切换;默认 200px 悬浮 拖拽 + 惯性 · 拖拽时切换「被拎起来」立绘,身体随光标方向摇摆;松手后按瞬时速度滑行一段并旋转回正,撞到屏幕边缘会「抓住」边缘停住;轻放只做一次轻微回弹,位置在滑行结束后才保存 动势遮断过渡 · 待机 ↔ 工作之间用「下压 → 换图 → 弹起」过渡,不叠影、不闪黑;后台标签页被浏览器暂停换图动画时有 1.6s 超时兜底 唤回入口 · 在设置里关掉她之后,左下角留一枚 🐋 按钮,点一下就叫回来,不会再「消失得找不着」
特性 · 说明 忙闲联动 · 检测到工具运行自动切「抱笔记本工作」,带淡蓝光晕与「工作中」标签 按工具类型细分姿态 · 跑命令 / 改文件 / 搜索 / 测试 / 评审 / 部署 / 调试各有对应姿势;识别不了就回落通用姿态,绝不乱猜 工作期稳定 · 工作中不切小剧场、不插话;信号短暂中断时姿势继续钉住(工作台 8s / 其他页 4s),不抽搐 点击反应 · 工作中点她会随机出现「害羞抱电脑」或「偷吃内存条」,不打断工作状态
dsh-xiaomi-tts 服务时才会出现「台词播报」开关,默认关闭;未安装、未配置或播放失败都不影响原有交互assets/ 就是运行产物,装入即用aria-live 播报node --test 跑宿主 · 支持 · 说明 DeepSeek Harness 桌面端 0.2.0-rc.2 · ✅ 已实测 · 那个构建的 GUI 默认 127.0.0.1:19387。安装/回滚见0.2.0 部署手册 DeepSeek Harness 桌面端 / Web 0.2.1-rc.1、0.2.1-rc.2 · ✅ 静态契约 · 对照 tag dsh-v0.2.1-rc.2 的源码与单元测试,没有在真实 Electron 里复跑。0.2.1 的桌面端端口改为系统分配(--port 0),不要再假设 19387。差分见0.2.1 契约与部署差分 旧版 Web profile(DSH 0.1.x) · ✅ 已实测 · 0.1.0-rc.6 及以上;设置面板在 0.1.1-rc.2 实测 其他 profile(headless / acp 等) · ➖ 无界面 · 没有浏览器界面,桌宠无处显示
项目 · 要求 操作系统 · Windows 10 / 11(当前桌面端的支持范围) Node.js · 18+(仅脚本安装方式需要;组合包安装不需要) 浏览器 · Edge / Chrome 最新版
数据不互通:桌面端主窗口 origin 是dsh-app://app,旧版 Web 是http://127.0.0.1:,两边localStorage(whale-moe:*)互不相通,也不会自动迁移。详见数据与隐私。
桌面端适配了哪些契约差异?(给插件作者看的)
v2.2.0 适配桌面端时,逐条核对了 DSH 0.2.0-rc.2 的真实契约并写了证据文档(docs/desktop-0.2.0-rc.2-contract.md):
契约点 · 0.2.0-rc.2 的变化 · 我们的处理 工具卡标记 · [data-role="tool"] 等旧标记 0 命中 · 改用 [data-tool](值 = 工具名)+ 同元素 data-state 忙态判定 · 工具卡完成后仍留在 DOM(ok/stopped) · 只有 running / preparing 算「正在工作」 会话运行 · 新增 [data-chat-running](仅运行时挂载) · 作为最干净的活信号 终端 · [data-slot="terminal"] 不存在 · 改用 [data-terminal] 输入框 · 变成 contenteditable · 改用 [data-composer-input] 主题 · 明暗写在 body[data-ds-dark-theme](空串=暗) · 补齐识别,旧 data-theme/class 保留为回落 设置面板 · 常驻引导弹窗也是 role="dialog" · 判据收敛到 [data-shortcut-modal="settings"] 客户端模块 · 惰性 CJS:副作用须在 factory 物化期 · boot() 从 apply() 移入 factory 引导弹窗 · 刷新后常驻的 OnboardingModal · 不再误判为设置页(否则桌宠会被隐藏)
这些行为都补了回归断言(test/desktop-client.test.mjs,34 项)。
v2.4.0 又对照了 tag dsh-v0.2.1-rc.2(见 docs/desktop-0.2.1-rc.2-contract.md):上表这些标记都还在,选择器没有改。变的是安装门禁——从 DSH 0.2.1-alpha.4 起优先读顶层 engines.dsh。本包的范围是 >=0.1.0-rc.6 <0.2.0-rc.1 || 0.2.0-rc.2 || 0.2.1-rc.1 || 0.2.1-rc.2。0.2.1-rc.1 / 0.2.1-rc.2 标成 compatible 的依据是这份静态核对加单元测试,不是实机验收。
装好后按顺序试一遍,一分钟知道她好不好用:
菜单项 · 效果 投喂小点心 · 提升饱食度与好感度,触发吃东西立绘 戳一下 · 降低心情,触发生气立绘 夸夸鲸鱼娘 · 提升心情与好感度,触发星星眼 小游戏:戳泡泡 · 打开 30 秒一局的泡泡派对 小游戏:接点心 · 键盘 / 鼠标追点心,躲炸弹 小游戏:鲸鱼翻翻乐 · 4×4 记忆配对,60 秒,连击与零失误加成 回到原位 · 清除保存的悬浮位置 打开设置 · 跳到 DSH 设置 → 看板娘
路径:DSH 设置 → 看板娘(共 15 个胶囊开关 + 「工作中台词」话痨/安静两档 + 8 个折叠分组)。
分组 · 内容 陪伴表现 · 如何称呼我、她的自称(留空回落到「鲸鱼娘」)、看板娘开关、台词气泡、台词播报(可选)、粒子效果、关键词感知、摸鱼提醒、深夜模式、工具细分、拖拽惯性、主动关怀、无障碍、工作中台词(话痨 / 安静) 天气 · 天气城市、选填 API Key、天气特效开关 余额 · 余额关心开关、余额显示数字开关、当前余额与档位 日常与养成 · 今日任务 / 本周签到 / 称号(标签页收纳) 成就墙 · 45 个成就,已解锁高亮、未解锁灰显 成长日记 · 羁绊升级、成就解锁等关键节点,倒序显示最近 12 条 跨端迁移 · 导出 / 导入存档(JSON),或复制 / 粘贴迁移码;带走好感度、等级、成就、任务、游戏记录与日记 数据与重置 · 重置悬浮位置、重置养成数据
默认关闭(涉及读取聊天内容或账户金额):关键词感知、余额关心、余额显示数字、台词播报、无障碍。
养成数据存在宿主 origin 的 localStorage 里,换桌面端、换电脑或换 profile 时不会自动跟过去。入口:设置 → 看板娘 → 跨端迁移。
WM1-… 迁移码,确认后覆盖同名数据;桌宠会立即重读,不用刷新页面。# 桌面端:升级后重启桌面端应用
& "$Desktop\DeepSeek Harness.exe" --expose-internals $Cli plugin --profile desktop add github:Sutera-Diffusus/dsh-whale-musume
# 旧版 Web:升级后重启 dsh web 并 Ctrl+F5
dsh plugin --profile web add github:Sutera-Diffusus/dsh-whale-musume更新不会动你的养成数据(whale-moe:* 留在宿主 origin 的 localStorage 里)。
# 桌面端
& "$Desktop\DeepSeek Harness.exe" --expose-internals $Cli plugin --profile desktop remove dsh-whale-musume
# 旧版 Web
dsh plugin --profile web remove dsh-whale-musume组合包方式无任何残留文件改写,卸载即干净移除;养成数据仍保留,重装后还在。只想让她暂时消失的话,直接关掉设置面板里的「看板娘」开关即可。
脚本会在 DSH_WHALE_BACKUP(默认系统临时目录)生成备份,回滚:
node scripts/apply-theme.mjs --rollback "<backup dir>"版本 · 日期 · 主题 · 要点 · 链接 v2.5.0 · 2026-10-21 · 翻翻乐 + 跨端迁移 · 第三个小游戏「鲸鱼翻翻乐」(16 张现有立绘、60 秒、连击/零失误);设置面板新增「跨端迁移」(JSON 导出/导入 + 迁移码,导入后热重载);新增 6 个成就(翻翻乐 4 + 百日/一年 2),成就总数 45 · Release · 说明 v2.4.0 · 2026-10-19 · 适配 DSH 0.2.1-rc.2 · 补 engines.dsh;0.2.1-rc.1 / 0.2.1-rc.2 按静态契约标为 compatible(未跑真实 Electron);0.2.0-rc.2 与旧版 Web 仍放行;DOM 选择器无增删 · Release · 说明 v2.3.0 · 2026-10-14 · 工作中台词两档 + 菜单不再被裁 · 见下方要点 · Release · Notes v2.2.1 · 2026-10-01 · 贴边不再跑出屏幕 · 见下方要点 · Release · Notes v2.2.0 · 2026-09-29 · 适配 DeepSeek Harness 桌面端 · 桌面端(Electron 壳,内嵌 DSH 0.2.0-rc.2)适配:惰性 CJS 引导时机、DOM 契约([data-tool] / [data-chat-running] / [data-terminal] / contenteditable 输入框)、主题属性(body[data-ds-dark-theme])、设置面板判据;修复首屏误判工作态 · Release · 说明 v2.1.0 · 2026-09-14 · 会说话,也不会凭空消失 · 可选 MiMo TTS 台词播报;修复弹窗导致桌宠永久消失(改为右下 mini);修复设置面板注册时序;余额优先 CNY 账户;新增 GitHub Actions CI · Release v2.0.1 · 2026-09-05 · 商城兼容性声明 · dsh.compatibility.dshReleases 兼容矩阵;恢复与商城目录固定 Commit 的血缘 · CHANGELOG v2.0.0 · 2026-08-28 · 余额 · 工具 · 日记 · 余额显示与播报、立绘预加载、按工具类型切换姿态、拖拽惯性、主动关怀、无障碍模式、成长日记、主题适配 · Release v1.5.0 · 2026-08-28 · 自定义自称 + 找回入口 · 自定义看板娘自称;关掉后左下角留唤回按钮 🐋 · Release v1.4.2 · 2026-08-28 · 适配 DSH 0.1.1-rc.2 · 修复出错后永久停留「翻车」立绘;修复设置入口无反应;bundle 自带设置面板 · Release