dsh-donkey-mill:用模型实时吐字速度驱动「驴拉磨」背景

前言

在 DeepSeek Harness(DSH)里长时间盯着 Web UI 对话时,流式输出往往只有文字在动,界面其余部分静止。若希望背景能反映当前模型是否在「干活」、吐字快还是慢,需要自己改前端或找装饰类方案。dsh-donkey-mill(仓库 lisusuba/Hardworking-donkey)是 maintainer lisusuba 发布的趣味换装类插件:把 Web UI 背景换成俯视「驴拉磨」,驴与磨盘的转速跟模型实时 token 吞吐联动;模型空闲时仍缓慢踱步,不会停死。包名 dsh-donkey-mill,npm 与 GitHub 均可安装,MIT 许可证,当前 package 版本 1.0.0。

这是什么

dsh-donkey-mill 定位是 DSH Web UI 背景插件:订阅宿主流式事件,估算平滑后的 tok/s,前端按该速率驱动 SVG 动画。仅面向 Web UI(platform: "web"),在 dsh 0.2.0-rc.2 上开发与验证。

社区目录归类为「趣味换装」;在 SkillHub 插件页 可查看条目(目录为独立生态站点,与 DeepSeek / 幻方无官方从属关系)。

两种呈现形态

插件支持两种形态,可在页面内即时切换:

  1. 文字(text) — 中央大字「磨」,左侧「驴」沿圆轨公转,磨盘与公转同步自转;楷体优先,偏水墨静感。
  2. 动画(animated,默认) — 俯视卡通驴拉磨:四蹄、尾巴、尘土与磨盘自转,随进度联动。

右下角有可折叠控制面板:切换形态、调节透明度、隐藏整个背景。设置写入浏览器 localStorage,刷新后保留,一般无需改宿主配置或重启。

可选在场景底部显示 N tok/s 读数(由 bundle 默认项 showReadout 控制,Web 端以面板与本地存储为准)。

安装与启用

推荐从 npm 安装预构建包(无需构建授权):

dsh plugin --profile web add dsh-donkey-mill

也可从 GitHub 安装到同一 profile:

dsh plugin --profile web add github:lisusuba/Hardworking-donkey

安装后可用下面命令确认 bundle 层已进入组合配置(应能看到 # == dsh-donkey-mill 相关层):

dsh --profile web --dump-config

在 Harness 设置 → 插件(Plugin Manager) 中确认 dsh-donkey-mill 已启用,刷新 Web 页面即可看到背景与控制面板。

本地开发目录安装示例:

dsh plugin --profile web add /path/to/Hardworking-donkey

卸载:

dsh plugin --profile web remove dsh-donkey-mill

配置说明

插件在宿主配置中的行 id 为 donkey-mill,包名为 dsh-donkey-mill。cordis.patch.yml 中的默认字段如下(宿主重启后默认值生效;日常调节以 Web 控制面板 + localStorage 为准):

字段 类型 默认值 说明
enabled boolean true 是否启用插件
mode animated | text animated 渲染形态
size number (160–720) 380 场景宽度(px)
opacity number (0.05–1) 0.55 整体不透明度
showReadout boolean true 是否显示底部 tok/s 读数
position 字符串枚举 bottom-right 历史字段,已忽略(场景全屏居中)

工作原理(便于排错)

宿主半边(index.js):

  • 订阅 agent/assistant-stream;
  • 按 attempt 维护 EMA 平滑的 token 吞吐(综合 usage 与 text-delta / reasoning-delta / tool-call-delta 估算);
  • 通过精确路由 GET /api/donkey-mill/rate 返回 {"rate": <tok/s>, "active": <bool>}。

Web 半边(client.js):

  • 注册在 shell.overlay 槽(order: -100,点击穿透);
  • 每 300ms 轮询速率接口,用 requestAnimationFrame 写 SVG 属性;
  • 两种形态共用同一运动学:空闲保底角速度 + 按 tok/s 加速;
  • 零运行时依赖,无需单独构建步骤。

主题色使用 DSH 主题令牌(--dsw-alias-*),亮/暗主题自动适配。

适用场景与注意

适合希望在 DSH Web 对话界面用轻量装饰反馈「模型是否在流式输出、大概多快」的开发者。不适合 CLI 或非 Web 场景:插件声明仅 Web,依赖 shell.overlay 与 webServer 路由。

安装插件前请自行阅读仓库源码与 MIT 许可证;插件在当前 dsh 进程权限下运行,与任意第三方 DSH 插件相同,应对来源与行为有基本信任。

仓库主要文件:index.js(宿主)、client.js(Web 客户端)、cordis.patch.yml(Loader patch)、locale/{en,zh}.json(显示名与描述)。

结尾

dsh-donkey-mill 把模型 live token 吞吐映射成「驴拉磨」转速,并提供文字/动画两种形态与右下角面板,属于 DSH「一切皆插件」思路下的纯装饰增强。条目与说明见 SkillHub 目录页,源码与 README 见 GitHub:lisusuba/Hardworking-donkey。

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

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

小夜