前言¶
DSH 的侧边栏对话只能依附于主窗口。一旦你切换到别的应用,或者把 DSH 主窗口最小化,侧边栏就会被遮挡,甚至完全看不见。dsh-float-chat 把这段对话独立出来,做成一个无边框、可置顶、能覆盖在任何其他应用之上的悬浮窗。
核心功能¶
独立原生窗口¶
悬浮窗是一个独立的 WinForms + WebView2 进程,不是画在 DSH 页面里的浮层。它能够压在所有应用之上,并在 DSH 主窗口最小化甚至隐藏时继续存在。
外观与交互¶
- 四态外观:支持浅色、深色、跟随 DSH、跟随 Windows 四种模式。在设置里调整后立即生效。
- 窗口几何记忆:位置、大小和不透明度会被记住,下次打开保持上次的状态。
- 标题栏操作:支持新对话、置顶、清理缓存、最小化、关闭等操作。
- Token 用量:每轮对话结束后,底部会显示输出 token 数。
会话与安全¶
- 继承上下文:开窗时继承当前会话的上下文,并插入边界提示。
- 多对话管理:通过标题栏下拉菜单切换历史对话、重命名或删除记录。
- 即用即焚:开启后,关闭窗口即删除本次侧边对话的记录(含落盘文件)。
缓存管理¶
- 清理缓存:支持清理浏览器缓存与日志。清理时会有提示。
- 实时统计:设置页会实时显示缓存与日志的大小。
安装¶
- 获取插件代码。
- 在项目根目录运行
npm link。 - 在 DSH 的 profile 目录中运行该命令(根据已核实事实的说明)。
使用方法¶
- 启动浮窗:在 DSH 主窗口的输入框右侧点击“浮窗”按钮。
- 切换对话:点击标题栏的对话名称下拉菜单,切换或重命名历史对话。
- 清理缓存:点击标题栏的垃圾桶按钮,或在设置页的“缓存与日志”卡片中点击清理。
- 调整设置:进入设置 -> 悬浮窗,调整外观、不透明度、窗口大小等。
注意事项¶
- 平台限制:仅支持 Windows(WinForms + WebView2)。macOS / Linux 不可用。
- 环境要求:需要 DSH Desktop(不支持 Web 版)。需要安装 WebView2 Runtime。
- 硬依赖:依赖
@deepseek-ai/dsh-client-ui-conversation插件,否则输入框右侧的“浮窗”按钮不会出现。