dsh-agent-whale-girl:DSH Web GUI 的鲸鱼娘客户端伴侣

前言

在 DeepSeek Harness(DSH)里长时间跑智能体时,界面侧栏通常是固定的品牌标识,会话 token 与上下文占用则分散在 composer 自带的指示器里。若你希望在 Web GUI 上有一个可交互、能反映当前会话状态的视觉元素,又不改 profile 或手写挂载配置,社区插件 dsh-agent-whale-girl 提供了一种纯客户端方案:替换侧栏品牌 mark,并在页面内叠加可拖拽的浮动角色,台词与 token 卡片均来自 DSH 自身的会话投影,不额外请求网络或模型。

下面按定位、能力、安装与注意事项说明该插件;事实以 GitHub 仓库 README 为准。

这是什么

dsh-agent-whale-girl 是面向 DSH Web GUI 的非官方「鲸鱼娘」伴侣插件,由维护者 Turanbuturan 发布,在 SkillHub 目录中归类为客户端。插件通过 dsh.bundle patch 一次性挂载侧栏与 overlay 两半,无需手动编辑 profile。

一句话能力:侧栏用角色面部图替换默认 fish logo;页面上方浮动 220×298 的纸娃娃,可拖拽、可折叠,头部跟随指针,点击与长按有反馈,气泡与 token 卡片展示当前会话的真实 token 与上下文占用。

角色美术为社区同人创作,非 DeepSeek 官方资产;代码为 MIT 许可。

核心功能

侧栏品牌 mark

插件注册 sidebar.brand.mark,用 avatar-face.png 的特写替换默认 fish logo,并设置 priority: -1 以占据该单值槽位。

浮动伴侣(shell.overlay)

在 frame 上叠加纸娃娃,上方为 token 卡片,旁边为对话气泡。可在 frame 内任意拖拽,位置保存在 localStorage['whale-girl:position'];双击回到右下角并清除保存位置;窗口变窄时会自动收进可视区域。

视线与肢体

头部朝指针方向转动(约 ±7°),尾巴反向摆动(约 ±4.8°);指针离开后约 0.22 s 回中。旋转枢轴按原画眼睛/睫毛测量,而非包围盒。

身体、头、尾为三层 puppet,静止时与插画像素一致,移动前视觉上无分层感。

交互:拍、点、连点

  1. 长按(≥ 350 ms):一次性 squash 动画与专属台词;不会折叠角色。
  2. 短按(< 350 ms):折叠或展开,并有一句回应。
  3. 快速连点:3–4 次有计数式抱怨;第 5 次触发一次性彩蛋动画。

动画仅在交互期间运行:三个一次性 @keyframes(wg-pat / wg-egg / wg-emote),无 infinite、无 alternate、无 will-change;空闲时 getAnimations() 为空。

情绪与台词

data-mood 随上下文占用变化:低于 50% 为 calm,≥50% 为 tense,≥85% 为 crit;每次跨档在角色角落显示 💦 约 2.6 s。

台词由状态触发,数字来自 DSH 会话投影(tokenUsage、contextPressure):挂载问候、点击回应、输出进行中进度、80% 上下文警告、输出停止约 2.5 s 后的完成句。插件不调用网络或模型。

Token 卡片

展示上下文占用(进度条与 tokens / window)以及当前会话的 output / input / cache-read 计数,与 composer 指示器同源投影。无会话时隐藏;窗口宽度小于 900 px 时让位隐藏。

安装与启用

包声明了 dsh.bundle patch,安装即挂载,无需改 profile、无需手动拷贝文件。

桌面 DSH 应用使用 desktop profile;纯 Web profile 将 --profile desktop 改为 --profile web:

dsh plugin --profile desktop add github:Turanbuturan/dsh-agent-whale-girl

本地目录或 release tarball 同样可用:

dsh plugin --profile desktop add ./dsh-agent-whale-girl

安装后刷新页面即可。若改动了 host 侧代码需重启整个应用(Node ESM 缓存会固定模块路径);该插件 host 半部 apply() 为空,一般刷新足够。

手动 drop-in(可选)

将插件目录拷到 <profile>/plugins/,在 profile 的 cordis.patch.yml 增加:

- insert:
    - id: whale-girl
      name: "./plugins/dsh-agent-whale-girl/index.js"

路径相对 profile 目录解析。删除 insert 行并刷新即可卸载;目录可保留。

卸载

dsh plugin --profile desktop remove dsh-agent-whale-girl

手动 drop-in 方式则删除上述 insert 行并刷新。

典型用法与构建(维护者)

日常使用:安装 → 刷新 → 在 Web GUI 内拖拽角色、单击折叠/展开、长按「拍」、观察 token 卡片与气泡随会话变化。

仓库已提交 lib/client.js 与 lib/client.css,安装无需构建。若修改原画或 skeleton,可在插件根目录执行:

node build.mjs
node verify-bundle.cjs lib/client.js

verify-bundle.cjs 对注册项、注入 CSS、层几何、视线数学、点击/拍/连点时机、 mood 值等做自检;请使用绝对路径或明确工作目录。

适用场景与注意

适合谁:在 DSH Web / desktop GUI 上开发或调试智能体、希望侧栏与 overlay 有统一角色标识,并直观看到当前会话 token 与上下文压力的用户。

权限与安全:插件以当前 DSH 进程权限在浏览器侧运行,读取的是 GUI 已有的会话投影。安装前建议浏览 源码 与 LICENSE;角色图遵循各上游仓库条款,详见 README 的 Source & attribution 与 NOTICE。

生态说明:DSH 采用「一切皆插件」的扩展方式;SkillHub 等社区目录为独立站点,与 DeepSeek、幻方无官方从属关系。本插件为社区非官方项目,「DeepSeek」与官方鲸鱼 logo 归各自权利人所有。

结尾

dsh-agent-whale-girl 把侧栏 mark 与可交互浮动伴侣收进一个可 dsh plugin add 的 bundle:不增网络面,台词与 token 与 composer 同源。若需要上述体验,可按 README 命令安装并刷新页面验证。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye