DeepSeek Harness plugin

dsh-whale-lap

趴趴鲸鱼娘 —— 一只趴在 DeepSeek Harness 对话框上的二次元鲸鱼娘桌宠:手绘 SVG、灵动动态、零外部依赖。

Jump to install

Source facts

Repository
Linzr-lly/dsh-whale-lap
Latest update
Aug 20, 2026
Category
Just for Fun
GitHub stars
0
Format
plugin
Catalog evidence
Upstream dsh.bundle evidence
Evidence path
package.json#dsh.bundle
Checked against
0.1.0-rc.8
Upstream check date
2026-08-20

This evidence comes from the upstream catalog. This site has not installed, run, or security-reviewed the plugin.

Install

Start with a prompt that asks an agent to review the GitHub repository and source. Switch to the command if you want to install it yourself.

Copy this prompt into DSH, Codex, or another agent and ask it to review the GitHub repository and source first.

Do not install or run any commands yet. Read this plugin's GitHub repository, README, and relevant source code. Then answer the questions below clearly and directly so I can decide whether it fits my needs:

1. What is this plugin, and what problem does it solve?
2. Who is it for, and what are its typical use cases?
3. How is it used after installation? Include one minimal example.
4. What known limitations or privacy, security, compatibility, or maintenance risks does it have?
5. Give a clear recommendation: recommend, conditionally recommend, or do not recommend, with reasons.

Distinguish statements documented by the repository, inferences from source code, and unknowns. If evidence is insufficient, say so explicitly. Do not guess or simply repeat the README.

GitHub: https://github.com/Linzr-lly/dsh-whale-lap
Plugin: dsh-whale-lap
Author: Linzr-lly

Check the source files

Read the README and other files from this plugin directory before installing.

File explorer2 files
README.mdSource · read only

🐋 趴趴鲸鱼娘 dsh-whale-lap

DeepSeek Harness 打造的二次元桌宠插件:一只手绘 SVG 的可爱鲸鱼娘,趴在对话框(composer)上沿陪你写代码——会眨眼、摇尾巴、头顶喷水、冒泡泡,工作起来还会掏出小电脑。

> 参考 GitHub 上的 dsh-whale-musume(元气鲸鱼娘) 重制:与其用 90+ 张生成立绘不同,本插件全部形象为手绘矢量 SVG + CSS/JS 动画,体积小、真·灵动动态、零外部依赖、无遥测。

✨ 特性

类别内容
🎨 本体手绘 SVG 鲸鱼娘(头枕双手、鲸尾上翘、头顶喷水孔),趴姿贴框
🌀 灵动动效呼吸起伏、尾巴摇摆、胸鳍扑扇、双马尾/侧发飘动、周期眨眼 + 双连眨、腮红脉动、头顶喷泉(约 9s 一次)、泡泡上飘、星星闪片
💬 对话联动检测到 DSH 工作时掏出小电脑 + 冒汗打代码;思考时歪头「o」嘴;成功时蹦跳庆祝;报错时掉眼泪安慰
🎧 偷听打字你在输入框打字时她会竖起耳朵(倾听嘴型 + 歪头),偶尔搭话
🖱️ 互动单击:脸红台词 + 爱心/星星飞出;三连击:星星眼 + 蹦跳庆祝;拖拽:被拎起来身体随方向倾斜,松手弹回对话框;右键/齿轮菜单
😴 陪伴细节安静 3 分钟自动打盹(闭眼 + Zzz + 慢呼吸),睡 40 秒自己醒来;每 50–110 秒主动闲聊;深夜安静时段(23:00–07:00)不闲聊、睡醒不吵你,安静 1 分钟就乖乖睡着
⚙️ 菜单贴回对话框 / 自由摆放 / 放大缩小 / 睡一会儿 / 躲起来(右下角 🐋 按钮可找回)/ 说句话 / 关于
🧩 工程纯前端 DOM 注入,不改 DSH 业务 DOM;localStorage 保存偏好(whale-lap:*);支持 prefers-reduced-motion

🆕 更新日志

  • v1.1.0

- 🌙 深夜安静时段正式落地(此前仅 README 宣称):23:00–07:00 不主动闲聊、睡醒不打招呼、安静 1 分钟自动打盹; - 🔁 修复资源加载失败后永不重试的问题:lib/client.js 改为注入成功后才置位启动标记,失败按 1.2s 退避重试最多 6 次,CSS/JS 并行加载; - ⚡ 性能优化:三个 setInterval 合并为单 tick(按各自节奏调度);滚动/缩放重排改 rAF 节流;可见性判断优先用 checkVisibility(比 getComputedStyle 便宜得多); - ⌨️ 支持 Esc 关闭菜单;齿轮按钮/找回按钮补充 aria-label; - 🧪 冒烟测试新增深夜模式覆盖;demo 页新增「🌙 深夜模式」开关(写 whale-lap:nightDemo)。

  • v1.0.0 首个版本:手绘 SVG 鲸鱼娘 + 全套动效 + DSH 状态联动 + 互动/菜单/打盹。

🖼️ 先看效果(无需安装)

直接双击打开 [demo.html](./demo.html)——一个模拟 DSH 的离线预览页,鲸鱼娘会立刻趴到模拟输入框上,右上角按钮可模拟「工作 / 思考 / 成功 / 报错」。

📦 安装(bundle 组合包,零侵入)

方式 A:GitHub 远程安装(推荐)

dsh plugin --profile web add github:Linzr-lly/dsh-whale-lap

方式 B:本地目录

# 在插件目录的上一级执行
dsh plugin --profile web add ./whale-girl-plugin

安装后重启 dsh web,打开页面(默认 http://127.0.0.1:3080)并强制刷新 Ctrl + F5,鲸鱼娘就会趴到对话框上沿。

验证

  • 点她:脸红 + 台词 + 爱心;连点三下:星星眼庆祝;
  • 按住拖动:被拎起来跟着光标摇摆,松手弹回对话框;
  • 让 DSH 跑一个工具:她掏出小电脑进入工作模式;
  • 在输入框打字:她歪头偷听。

🎮 使用说明

操作效果
单击随机台词 + 爱心/星星粒子,短暂开心
连点 3 下星星眼 + 蹦跳 + 粒子庆祝
按住拖动「被拎起来」,身体随移动方向倾斜;松手弹回对话框(自由位置已记忆)
右键 / 齿轮 ⚙菜单:贴回对话框、自由摆放、放大/缩小、睡一会儿、躲起来、说句话、关于
输入框打字倾听状态(歪头 + o 嘴),偶尔搭话
长时间没动静自动打盹(Zzz),睡醒元气满满

📁 项目结构

whale-girl-plugin/
├─ package.json           # DSH 插件声明(dsh.bundle + dsh.client)
├─ cordis.patch.yml       # 组合包 patch:插入 dsh-whale-lap
├─ lib/
│  ├─ index.js            # 宿主半边:/api/dsh-whale-lap/assets 静态资源路由
│  └─ client.js           # 浏览器半边:注入样式 + 表现层
├─ assets/
│  ├─ whale-girl.svg      # 手绘鲸鱼娘(唯一美术资产,动画全在 CSS)
│  ├─ whale-lap.css       # 全部动效(呼吸/摇尾/眨眼/喷水/泡泡/Zzz…)
│  └─ whale-lap.js        # 贴框定位、状态联动、拖拽、互动、台词
├─ demo.html              # 离线预览页(双击即看效果)
├─ test/                  # 自动化验证(真实浏览器 CDP 验收)
│  ├─ smoke.mjs           # Node DOM-stub 冒烟测试
│  ├─ server.mjs          # 本地静态服务器(预览/测试用)
│  ├─ cdp-shot.mjs        # CDP 截图 + 运行时状态读取
│  ├─ cdp-state.mjs       # 状态联动验收(工作/报错/单击)
│  ├─ cdp-night.mjs       # 深夜安静时段验收
│  ├─ cdp-final.mjs       # 动画/倾听/拖拽弹回验收
│  ├─ e2e-dsh.mjs         # 真实 DSH 页面集成验收(需 dsh web 在 3080)
│  └─ shot-cdp.png        # 验收截图(趴在对话框上沿)
└─ README.md

✅ 自动化验证

# 1) 冒烟测试(无浏览器,Node 18+)
node test/smoke.mjs

# 2) 真实浏览器验收(需要 Edge/Chrome)
node test/server.mjs 8899        # 起本地静态服务器
msedge --headless --disable-gpu --no-sandbox --remote-debugging-port=9222 --user-data-dir=%TEMP%\wl-edge about:blank
node test/cdp-shot.mjs           # 截图 + 运行时状态
node test/cdp-state.mjs          # 工作/报错/单击联动
node test/cdp-night.mjs          # 深夜模式安静时段
node test/cdp-final.mjs          # 动画/打字倾听/拖拽弹回

# 3) 真实 DSH 集成验收(需要先启动 dsh web,如 dsh --profile web --port 3080)
node test/e2e-dsh.mjs            # 在真实 DSH 页面确认鲸鱼娘 v1.1.0 唤醒并贴框

已通过的验收项:贴框坐标像素级精确(下沿压进对话框上沿 15px)、尾巴/泡泡/喷泉/眨眼动画生效、工作中掏出小电脑、报错掉眼泪、打字触发倾听、拖拽跟随并在松手后弹回对话框。

🔧 工作原理

1. cordis.patch.ymldsh-whale-lap 插入 profile; 2. 宿主侧 lib/index.js 注册只读静态路由 /api/dsh-whale-lap/assets?f=<path>; 3. 浏览器侧 lib/client.jswindow.__ModuleLoader__ 加载,注入样式与表现层; 4. 表现层 whale-lap.js 取回 SVG 内联进页面(内联后 CSS 动画才能作用于 SVG 元素),用 [data-composer-card="true"] / [data-slot="conversation.composer.bar"] 定位对话框,把她的身体下沿压进对话框上沿 15px,实现「趴在上面」; 5. 轮询 DSH 状态信号(data-running / data-state="ongoing" / loading / success / error)联动表情台词。

🗑️ 卸载

dsh plugin --profile web remove dsh-whale-lap

或在浏览器 localStorage 中删除 whale-lap:* 键后刷新页面。

🔒 数据与隐私

  • 偏好(模式/大小/位置/隐藏)存于浏览器 localStorage,键名 whale-lap:*
  • 不发送遥测、不访问外部网络、不读取 DSH 会话数据;
  • 全部资源本地加载,安装无需修改任何内置包文件。

🐳

鲸鱼娘陪你写代码,也陪你摸鱼。