dsh-ui-hub
DSH Web 客户端 UI 管家插件:枚举所有插件的每个 UI(按钮/图标/图表等),独立开关、独立定位、碰撞避让与一键美观排布。UI butler for DeepSeek Harness: per-widget toggle, positioning, collision avoidance and auto layout for every plugin UI.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Han-1413141/dsh-ui-hub说明文档
阅读完整 README ↗dsh-ui-hub
English | 中文
DSH Web 客户端插件:UI 管家。把页面上每个插件贡献的每个 UI(面板、按钮、图标、图表、输入框……)都枚举出来,支持逐个开关、逐个定位、碰撞避让和一键美观排布,专治插件一多之后的互相遮挡、挤成一团。



✨ 功能
| 功能 | 说明 |
|---|---|
| 🔍 全量发现 | 枚举平台每个 [data-slot] 插槽里的插件 UI,以及脱离插槽的浮动控件(如 dsh-sticky-disclosure 的按钮、dsh-mingli-chart 的悬浮图);不认识的新控件可用「拾取元素」点击捕获 |
| 🗂️ 官方 / 插件分区 | 面板顶层分成「官方 UI」与「插件 UI」两个类别(每个条目也带官方/插件标签),一眼分清平台自带的界面和第三方插件塞进来的界面 |
| 📁 分组折叠 | 类别与插槽组两级折叠,默认全部折叠,只显示类别和组名+数量,逐级展开才出现条目,界面干净易观察;展开状态自动记忆 |
| 🎚️ 精确到单个 UI | 每个 UI 根节点独立开关;再往下可展开到内部元素——按钮 / 图标 / 图表 / 输入框,逐个显示或隐藏 |
| 📐 三种位置模式 | 默认(恢复原样)、微调(translate 平移,不脱离原布局)、浮动(fixed 定位,x/y 精确坐标) |
| 🖱️ 直接拖拽 | 面板点「拖拽模式」后:直接拖动任意 UI 改变位置(插槽内 UI 用平移保持布局与弹层跟随,漂浮控件用固定坐标),拖动元素右下角手柄改变大小;Esc 退出编辑 |
| 🛡️ 碰撞避让 | 三档:关闭(只报告)/ 智能(明显重叠才让位)/ 严格(任何重叠都让位);锁定某项后只挤别人、不挤它 |
| ✨ 一键自动排布 | 以会话滚动区为锚点,把所有浮动 UI 沿右缘排成对齐的纵向列,自动换列、留白一致 |
| 💾 持久化 | 所有开关、位置、大小与折叠状态保存在浏览器 localStorage,刷新/重开会话后自动恢复 |
| 🧹 无侵入可还原 | 不修改任何插件代码;只给 DOM 加 data-uihub-* 标记 + 自己的 !important 样式。关闭/卸载插件即逐元素还原 |
为什么需要它
DSH 是插件生态,每个插件都会往页面塞一点 UI:会话标题栏按钮、输入区下方的徽章、侧边栏底部卡片、右下角浮动药丸、悬浮图表……插件之间互不知道对方在哪,。UI 管家给这些 UI 建立一份统一的「花名册 + 排班表」:




