Analog Liquid Glass for DSH:给输入框加一层模拟质感的液态玻璃

前言

DeepSeek Harness(DSH)的对话输入区默认是功能向的卡片样式。若你希望在 Web 客户端里保留原有交互,只把输入框视觉改成更接近「玻璃容器」的质感——镜面高光、内缘白线、思考时的气泡——而不改 DOM 结构,社区插件 Analog Liquid Glass for DeepSeek Harness(仓库 Siloet-phy/analog-liquid-glass-for-dsh)就是为此做的「趣味换装」类扩展。下面介绍它做什么、如何安装,以及使用时需要注意的环境与权限。

这是什么

维护者 Siloet-phy 在 GitHub 开源了该插件(当前 package 版本 0.1.0,许可证 MIT)。名字里的 Analog 指模拟仪表那种质感(弯液面、观液管、刻度),不是「模拟/数字」的技术含义;图标即竖直玻璃观液管、液柱与上升气泡,对应容器、液位式进度与「模型正在思考」三件事。

插件通过 DSH 的 conversation.input.overlay slot 在输入框上叠加玻璃层,用测量原生卡片矩形做几何贴合;「模型是否在思考」优先来自 useSession((s) => s.running),取不到时退化为观察原生发送/停止按钮状态。它不自己管理主题,而是消费 DSH 的 --dsw-* token 与 body[data-ds-dark-theme],并在深浅主题切换时让玻璃比整页更慢地过渡(约 1.7s 对 0.9s)。

核心功能

README 用表格归纳了可见元素,经核对可概括为:

元素 行为说明
磨砂层 白雾 + 重度模糊,构成玻璃感(非简单半透明叠层)
顶部镜面高光 玻璃上缘常见柔光
内缘白线 上缘发丝白线
外扩散泛光 光从玻璃边缘微微溢出
三点吐泡泡 仅在模型思考时:三颗泡错开 1/3 周期、同出生点,一个破灭、一个新生
主题过渡 浅 ↔ 深切换时玻璃插值更慢(1.7s vs 0.9s)
真毛玻璃 为磨砂感会覆盖 [data-composer-card] 的背景与 backdrop-filter;卸载后不留样式

作者强调的两条设计决定:玻璃内部不放彩色(颜色只出现在边缘高光);玻璃层以「加层」为主、不改原生卡片 DOM,毛玻璃覆盖是唯一例外且集中在 client.js 一处、可删回纯加层模式。

无障碍方面遵循 prefers-reduced-motion:开启后动画停止,保留静态玻璃与状态色。

安装与启用

当前推荐从 GitHub 安装(README 写明本包尚未发布到 npm):

dsh plugin --profile <你的 profile> add github:Siloet-phy/analog-liquid-glass-for-dsh

说明两点:

  1. 桌面版 DSH 的包管理需要先完全退出 DSH 再执行命令,装完重启生效。
  2. profile 一般为 desktop(桌面版)或 web(由 dsh web 启动的服务)。

若将来 npm 上有同名包,也可使用短名:

dsh plugin --profile <你的 profile> add analog-liquid-glass-for-dsh

卸载命令:

dsh plugin --profile <你的 profile> remove analog-liquid-glass-for-dsh

卸载后输入框恢复原样,样式表随插件生命周期移除。

典型用法

该插件属于纯视觉扩展,安装并重启 Web 客户端后即可生效,无需额外配置项(资料中未列出用户侧配置文件或环境变量)。

使用方式即正常在 DSH Web 界面输入、发送消息:当会话处于 running(思考/生成)状态时,玻璃层会出现向上冒泡动画;停止后气泡逻辑随之结束。深浅主题切换时观察玻璃层的 1.7 秒过渡即可验证主题联动。

纯 CLI 会话不受影响;仅 Web 客户端(桌面内置浏览器或 dsh web)会加载 client 端 bundle。

适用场景与注意

适合谁:在 DSH 0.2.0-rc.2 及以上、使用 Chromium 系内核(Electron)的 Web 客户端开发者或日常用户,希望输入区有液态玻璃视觉且接受对 composer 卡片背景的有限覆盖。

兼容性(来自 README):

  • DSH:0.2.0-rc.2+(依赖 conversation.input.overlay slot 与 ctx.theme 的 theme/change 事件)
  • 平台:Web 客户端;纯 CLI 不受影响
  • 浏览器:需支持 backdrop-filter 与 color-mix() 的现代 Chromium 内核

安全与权限:DSH 插件以当前 DSH 进程权限运行。安装前应在 GitHub 仓库自行查看源码与 MIT 许可证,确认符合你的使用与分发要求;社区目录站点(如 skillhub.cn 上的插件页)与 DeepSeek / 幻方无官方从属关系,并非官方应用商店。

找不到原生 composer 卡片时插件会整体隐藏(fail-closed),避免错位叠层。

开发与自测(可选)

维护者在仓库提供本地断言脚本,改 client.js 后可先跑替身环境测试再跑 DOM 集成测试:

node selftest.mjs
node livetest.mjs [react-umd 目录]

selftest.mjs 验证模块面与 apply() 等行为;livetest.mjs 需要自行准备 react/react-dom/jsdom(未写入 package 依赖)。Node 引擎要求 >=20。

结尾

Analog Liquid Glass for DSH 把输入框做成模拟仪表语义的液态玻璃:静态时有磨砂、高光与泛光,思考时有气泡,主题切换有过渡,且尽量只加层、少动 DOM。若你要试用或看实现细节,可打开社区目录页与 GitHub 仓库:

  • 目录页:https://www.skillhub.cn/plugins/Siloet-phy/analog-liquid-glass-for-dsh
  • GitHub:https://github.com/Siloet-phy/analog-liquid-glass-for-dsh
羽毛球分组比赛记分
小程序二维码

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

小夜