dsh-whale-particles-bg:为 DSH Web UI 挂上鲸鱼粒子背景

前言

DeepSeek Harness(dsh)的 Web 客户端支持通过 Cordis 插件扩展界面。若你希望在主界面背后增加一层动效背景,而不是改核心仓库或手写一次性脚本,社区里已有面向「趣味换装」的正式 bundle 包可以一键安装。下面介绍维护者 kviiinh 发布的 dsh-whale-particles-bg:在框架级 shell.overlay 槽位注册两层全屏 canvas,呈现 WHALE 轮廓粒子场与官方风格的点阵网格,并随指针与主题变化。

社区插件目录见 SkillHub 插件页;源码与说明在 GitHub 仓库。该目录为社区站点,与 DeepSeek / 幻方无官方从属关系。

这是什么

dsh-whale-particles-bg 是 dsh Web UI 的正式插件包(bundle 形态):声明 dsh.bundle,可通过 dsh plugin add 安装,由包内 cordis.patch.yml 自动插入插件行(id: whale-particles-bg),无需手改 profile 补丁。

一句话能力:Animated whale particle background for the DeepSeek Harness (dsh) Web UI — assembling from its scattered shell, breathing at idle, and being pushed around by the pointer(鲸鱼轮廓粒子从散点聚合、空闲呼吸、指针斥力;并带点阵网格层)。

  • 维护者:kviiinh
  • 分类:趣味换装
  • 许可证:MIT(package.json)
  • 版本:1.0.0(package.json)
  • peer 依赖:@deepseek-ai/cordis ^4.0.2

核心功能

两层 canvas

层级 z-index 内容
鲸鱼层 1 从 WHALE SVG 路径采样的粒子场(24×18 viewBox,6× 离屏栅格化,每 2px 采样)。粒子从散点 shell 聚合;空闲时呼吸;指针在 4.9 世界单位半径内沿各粒子旋转角度产生斥力。
点阵网格层 0 90px 方格点阵、邻居连线;指针 140px 范围内吸引并放大圆点。

两层均为 fixed、全视口、pointer-events: none 的 canvas,不挡点击。

主题与性能

  • 主题:每帧读取 body[data-ds-dark-theme],深色粒子色 rgb(215,232,255),浅色 rgb(50,82,135),无需单独订阅主题事件。
  • 帧率:requestAnimationFrame 限约 30fps(FRAME_MS = 33);标签页隐藏时浏览器会暂停 rAF。
  • 挂载点:shell.overlay(由 @deepseek-ai/dsh-client-ui-layout 声明的 frame 级 list 槽位)。
  • 页面背景:global.css 在工厂执行时注入带标记的 <style>,会覆盖 body 背景(含 !important)。

bundle 行为

安装时会把包追加进 profile 的 dsh.profile.bundles,并由 cordis.patch.yml 写入插件行。仓库提交 lib/ 构建产物,浏览器侧为 window.__ModuleLoader__.load({ id, factory }) bundle,git 安装后无需本地 build。Node 半边(src/index.ts)为空 apply,纯 UI 插件只需出现在 Loader 中。

安装与启用

前提:已部署 dsh,且 dsh CLI 在 PATH 中(或在 dsh 源码 checkout 里用 pnpm dsh …)。

1、添加插件(命令来自仓库 README):

dsh plugin --profile web add git+https://github.com/kviiinh/dsh-whale-particles-bg.git

其他来源(README 注释):本地路径 dsh plugin --profile web add /abs/path/to/this/repo;若已发布到 npm,可用 dsh plugin --profile web add dsh-whale-particles-bg。

2、重启 Harness:

dsh web

3、在 Settings → Plugins → Plugin list → Global plugins 中应看到 whale-particles-bg 为运行状态,界面背后出现鲸鱼粒子背景。

移除(同时去掉依赖与该层):

dsh plugin --profile web remove dsh-whale-particles-bg

也可在 profile patch 里将对应行的 disabled: true,效果等同关闭。

典型用法与维护

日常使用

安装并重启后无需额外配置:本包没有 settings namespace,也没有 host 侧业务逻辑,属于纯视觉 overlay。预览效果可参考仓库 README 中的动图(src/preview.gif,720×360,10fps,约 12 秒:聚合、呼吸、指针斥力)。

dsh 大版本升级后

树外插件携带 @deepseek-ai/cordis peer;若 major 升级后 peer 不匹配,需在 dsh checkout 中重新构建本包:

scripts/build.sh /path/to/deepseek-harness
# 或:DSH_CHECKOUT=/path/to/deepseek-harness scripts/build.sh

脚本会把源码暂存到 checkout 的 packages/client/dsh-whale-particles-bg/,执行 pnpm install → tsc -b → tsdown --env.DSH_BUILD_FACE client,再把 lib/ 拷回并运行 scripts/sanitize-artifacts.mjs 脱敏构建产物中的本机路径信息。

插件市场收录(可选)

社区市场由 awesome-dsh-plugin registry 驱动;本仓库已带 dsh-plugin topic 且声明 dsh.bundle,若 PR 进入 registry 的 UI Enhancements 分类,则可从 Settings → Plugin Market 安装。当前以 git 安装为主。

适用场景与注意

适合:希望在 dsh Web 界面保留 WHALE 品牌感动效、又不想维护进程内动态 Cordis 片段的开发者;需要与官方点阵风格叠加的全屏背景时。

注意:

  • 插件以当前 dsh 进程权限运行;安装前应自行审阅 源码 与 MIT 许可证。
  • global.css 会全局覆盖 body 背景;若要可配置,需自行扩展 settings 命名空间并在插件设置页提供卡片(README 说明)。
  • 无 per-package approval 要求(无 host 侧行为),但禁用/卸载请用上述 CLI 或 patch 中的 disabled。

结尾

dsh-whale-particles-bg 把鲸鱼粒子场与点阵网格注册到 shell.overlay,安装一条命令、重启 dsh web 即可生效,卸载同样一条 remove。若你在做 DSH 界面个性化,可从目录页与 GitHub 查看预览与构建说明:

  • 目录页:https://www.skillhub.cn/plugins/kviiinh/dsh-whale-particles-bg
  • GitHub:https://github.com/kviiinh/dsh-whale-particles-bg
羽毛球分组比赛记分
小程序二维码

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

小夜