前言¶
在 DeepSeek Harness(DSH)里改设置时,原生界面是居中模态框加全屏遮罩:对话被盖住,窗口也不能拖走。若你一边对照聊天记录一边调插件或模型参数,只能反复关设置、再打开,效率很低。下面介绍社区插件 dsh-plugin-settings-float(维护者 xuanyang905,分类:客户端):在不改上游 bundle 的前提下,把同一套设置 React 树从模态里「抬」成可拖动、可改大小的浮窗,去掉遮罩后聊天仍可看、可点。
这是什么¶
dsh-plugin-settings-float 是 DSH 客户端插件(版本 0.1.0,MIT)。它针对当前 DSH 设置外壳做 DOM 层增强:不修改官方打包产物;若 DSH 升级改了设置页 markup,插件可能不再生效,设置页会退回原生居中模态——作者将其定位为便利层,而非 fork。
仓库:GitHub - xuanyang905/dsh-plugin-settings-float
目录页:SkillHub 插件页
核心功能¶
已核实能力如下(均来自项目 README):
- 可拖动:抓住导航标题或内容区标题,把窗口移到任意位置。
- 八向缩放:上、下、左、右四条边与四个角均可拖;对边保持锚定。
- 聊天保持可用:去掉深色遮罩, overlay 不再吞指针事件,浮窗后的对话可见且可点击。
- 记住几何:位置与尺寸按浏览器 profile 写入
localStorage(键名:dsh.settings-float.pos.v1、dsh.settings-float.size.v1)。 - 重置快捷:双击标题恢复默认位置(右侧、垂直居中);双击缩放手柄恢复配置的默认尺寸。
- 可配置:默认宽高、最小尺寸、总开关、可选「点外侧关闭」等,通过 DSH 插件配置卡片暴露。
隐私方面:无网络请求、无 host 侧改动、无遥测;仅上述两个 localStorage 键。
安装与启用¶
1、在指定 profile 下安装(命令以 README 为准):
dsh plugin --profile <your-profile> add dsh-plugin-settings-float
2、确认 profile 的 package.json 里 bundles 已包含该包(从 GUI 插件页安装时通常会自动写入):
"dsh": {
"profile": {
"bundles": [ "...", "dsh-plugin-settings-float" ]
}
}
3、重启 DSH host。客户端 bundle 在启动时组装,仅刷新页面不够。
插件声明需要 web 能力表面(dsh.client platform web),引擎要求 DSH >=0.2.0-rc.2;README 写明在 DSH 0.2.1-rc.3(桌面与 web profile 共用同一设置外壳)上验证过。
典型用法¶
打开设置后,操作与原生关闭方式(Esc、关闭按钮)不变,额外支持:
| 操作 | 效果 |
|---|---|
| 拖动导航标题 / 内容标题 | 移动窗口 |
| 拖动任一边或角 | 缩放(受最小尺寸与视口限制) |
| 双击标题 | 位置恢复默认 |
| 双击缩放手柄 | 尺寸恢复为配置的默认值 |
| Esc / ✕ | 关闭设置(与原生一致) |
配置可在 Settings → Plugins → Settings Float 中改,或在 profile patch 里写:
- id: settings-float
name: dsh-plugin-settings-float
config:
enabled: true
defaultWidth: 760
defaultHeight: 720
minWidth: 480
minHeight: 320
closeOnOutsideClick: false
| 配置项 | 默认 | 含义 |
|---|---|---|
enabled |
true |
为 false 时使用原生居中模态 |
defaultWidth / defaultHeight |
760 / 720 |
初始尺寸(用户改过大小后以个人记录为准) |
minWidth / minHeight |
480 / 320 |
可拖到的最小宽高 |
closeOnOutsideClick |
false |
为 true 时点击浮窗后的聊天区域会触发 Escape 关闭设置 |
适用场景与注意¶
适合谁:经常在 DSH 里一边看对话一边改设置、调插件配置的开发者或重度用户;需要 web 客户端场景。
使用前请知悉:
- 插件与当前 DSH 进程权限一致,安装前建议自行查看 源码与 LICENSE,确认符合你的安全与合规要求。
- 实现依赖
role="dialog"及设置页子结构识别;上游 DOM 大改时可能静默失效,不会破坏原生设置页。 - SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系;DSH 生态理念是「一切皆插件」,本文介绍的是社区维护的客户端增强,非官方应用商店条目。
结尾¶
dsh-plugin-settings-float 把设置从全屏遮罩模态改成可拖、可缩的浮窗,并用本地存储记住布局,适合需要「设置与聊天同屏」的 DSH 使用方式。进一步了解实现与开发测试命令见 GitHub README;安装入口也可从 SkillHub 目录页 跳转仓库。