前言¶
在 DeepSeek Harness(DSH)里跑智能体时,权限请求、回合开始与结束往往只体现在会话流或日志里,容易被别的窗口挡住视线。若希望这些节点以桌面级提示呈现——浮在所有窗口之上、样式可自定义——需要把宿主侧的事件观察与独立的悬浮呈现拆开。下面介绍社区插件 dsh-LimBusCompany-dancinglyrics-toast(维护者 GRmaid,SkillHub 分类为趣味换装):把 DSH 会话事件做成《边狱公司(Limbus Company)》歌词动画风格的逐字提示,文案与动画参数在 DSH 设置页编辑,保存即生效。
这是什么¶
插件全名对应 npm 包 dsh-limbuscompany-dancinglyrics-toast(当前资料中版本 0.1.0,许可证 MIT)。它监听 DSH 的 session/event,将 需要授权(approval/asked)、回合开始(思考中,turn/start)、授权完成(approval/decided)、回合结束(任务完成,turn/end) 等事件,渲染成可配置文案后,通过本机 SSE 推给伴侣悬浮窗;伴侣用 Electron 透明置顶窗口逐字播放动画,默认在屏幕两侧随机落位。动画与排布设计致敬开源项目 idea-from-limbus-company-dancing-lyrics(「都市回响」桌面歌词),实现路径为 Electron + DOM/CSS,而非原项目的 Qt 管线。
目录页:SkillHub 插件条目。源码与说明:GitHub GRmaid/dsh-LimBusCompany-dancinglyrics-toast。
架构:事实与呈现分离¶
README 中的分工可以概括为两条链路:
DSH 宿主(本插件的 Cordis 半边) 伴侣悬浮窗(Electron,独立进程)
├─ ctx.on("session/event") 观察会话事件 ├─ 透明、覆盖整个工作区、鼠标穿透
│ approval/asked · turn/start · turn/end ├─ EventSource 订阅本地 SSE
├─ 模板渲染({tool} {outcome} {title} 占位符) ├─ 逐字动画:入场/律动/退场、两侧随机落位
├─ 设置路由 + 状态文件持久化 └─ 每 1.5 秒重申置顶(防被普通窗口盖住)
└─ 127.0.0.1:<port> SSE 服务
- 插件半边只负责「哪个事件、渲染成什么文案」,不负责绘制。
- 伴侣窗口只负责「怎么动、怎么摆」;参数随每条 toast 下发,改设置后下一条提示即可用新参数。
- 伴侣不是浏览器里的 Web-GUI 页面;事件服务是监听
127.0.0.1的独立 HTTP 服务器,不走 Web-GUI 路由的宿主/来源栅栏。
核心功能¶
会话事件与文案模板¶
四类事件可在设置页分别开关,并为每类配置文案模板。模板占位符包括 {tool}、{outcome}、{title}、{sessionId}。
歌词式动画与落位¶
- 逐字淡入、波纹或跌落退场、抖动/波动律动、白芯发光(字芯、描边、光晕可调)。
- 两侧随机(sides):伴侣铺满工作区(Electron
workArea,不含任务栏),屏幕左右各 5 个垂直槽位随机选空闲格落位,左右倾斜角镜像;与「巴士歌词」同款排布。 - 也可选用
bottom-right、bottom-center、top-center等锚定模式,按到达顺序从锚边向内堆叠。 - 分辨率、缩放或任务栏变化时会重新贴合窗口边界。
置顶与伴侣生命周期¶
Windows 下其他窗口激活时,透明窗口可能被降出置顶带;伴侣因此每 1.5 秒 重申 screen-saver 级置顶并 moveTop()。独占全屏游戏仍会盖住一切,属平台限制。
伴侣默认随插件自动启动(设置项 companion.launch):宿主拉起伴侣后,每 3 秒探测 127.0.0.1:41170,插件上线即连接;URL 的 ?port= 可覆盖默认端口。宿主带自愈:约 1 分钟无伴侣连接会尝试重新拉起(单实例锁下重复拉起无害)。诊断日志写在 %DSH_HOME%\dancing-lyrics-toast\launch.log。
设置页与持久化¶
在 DSH 设置页 → 桌面提示 可编辑事件文案、字体、颜色、动画、悬浮窗位置与端口、伴侣路径等。配置经宿主路由 GET/POST /plugins/dancing-lyrics-toast/config 合并后原子写入 %DSH_HOME%\dancing-lyrics-toast\config.json,并通过 SSE 推给伴侣;端口改动需重启 DSH。设置页提供「测试动画」:可推送四类样例、一键连播,并显示已推送到多少个伴侣窗口(为 0 表示伴侣未运行,可点「拉起伴侣窗口」)。
安装与启用¶
CLI 安装(资料原文命令):
dsh plugin add github:GRmaid/dsh-LimBusCompany-dancinglyrics-toast
桌面客户端当前安装边界只接受发布到 npm 的插件;本地 link 步骤如下:
- 将仓库放到
%DSH_HOME%\profiles\desktop\plugins\dsh-limbuscompany-dancinglyrics-toast(伴侣在包内companion/); - 在 profile 的
node_modules建 junction 指向该目录,package.json的dependencies写link:<plugins 目录绝对路径>,并把包名加入dsh.profile.bundles; - 重启 DSH。
也可手动启动伴侣(例如调试时):
cd companion
npm install
npm start
安装前请自行查阅仓库源码与 MIT 许可证;插件以当前 DSH 进程权限运行,会启动本机子进程与本地 SSE 服务。
典型用法¶
- 按上文命令安装插件,确认伴侣已连接(设置页测试卡片显示推送数大于 0)。
- 在设置页为四类事件写好模板,按需调整字体、光晕强调色、入场/退场方式(波纹或跌落)、律动(波动/抖动/静止)及
sides随机落位。 - 正常使用 DSH 会话:触发授权或回合开始/结束时,应看到对应逐字动画浮在工作区两侧或所选锚点。
开发者自测(来自 README,无需完整 DSH):
# 宿主半边
cd tools && node harness.mjs
# 伴侣窗口
node tools/mock-feed.mjs 41198 &
companion/node_modules/.bin/electron companion --port 41198 --capture capture.png
适用场景与注意¶
适合:希望在 Windows 桌面上用强视觉、可定制的歌词动画感知 DSH 会话节奏的用户;熟悉 idea-from-limbus-company-dancing-lyrics 参数体系的人可以按 README 对齐的速度倍率(25%–300%)、跌落距离(0–128px)等直接调参。
注意:
- 资料标明目前主要在 Windows 上验证(junction、工作区几何、置顶行为)。
- 事件名依赖
session/event与KIND_OF_EVENT映射;DSH 核心事件名变更需插件同步更新。 - SkillHub 为社区插件目录,与 DeepSeek / 幻方无官方从属关系;安装与运行责任在用户侧。
结尾¶
dsh-LimBusCompany-dancinglyrics-toast 把 DSH 会话节点从「藏在界面里」变成「桌面上的歌词式提示」:宿主管事件与模板,伴侣管动画与置顶,设置页一条链路改完即生效。若需要条目摘要与仓库细节,可打开 SkillHub 目录页 与 GitHub 仓库。