Repository navigation
Releases
Releases · cyh3436332528/dsh-float-chat
v0.4.0 — 把 DSH 侧边对话弹成独立置顶浮窗
把 DSH 的侧边对话弹出来,变成一个能压在所有应用之上的独立置顶浮窗。
⚠️ 这是0.4.0,按 SemVer 属于尚未到 1.0 的早期版本。
它是这个插件的首次公开开源,但不是首个正式版本——接口与行为仍可能在不发大版本的情况下调整。
实机演示
dsh-float-chat-demo.mp4
(约 19 MB)——真实桌面上录制的完整流程:从 DSH 主窗口打开浮窗、切到其他应用确认置顶生效、
在浮窗里继续对话、改外观与不透明度。
功能
- 独立置顶浮窗:不是画在 DSH 页面里的浮层,而是一个独立的原生进程(WinForms + WebView2),
因此能真正压在其他应用之上,也能在 DSH 主窗口最小化甚至隐藏时继续存在。 - 无边框 + 圆角 + 拖角缩放,标题栏整条可拖动。
- 五颗标题栏按钮:清理缓存(点击先闪红)/ 新对话 / 置顶(图标反映状态)/ 最小化 / 关闭。
图标全部 GDI+ 自绘,不用字体符号。 - 继承当前会话上下文:窗口里的对话与 DSH 内置侧边栏是同一个引擎、同一批 side thread,
只是多了一扇窗。 - 多对话管理:切换、重命名(行内编辑)、删除单条记录,窗口索引记 20 条。
- 即用即焚:打开后关闭窗口即删除本次对话记录(含落盘文件)。
- 折叠思考过程、渲染代码块、回到底部按钮、中文输入法焦点处理。
- 四态外观:浅色 / 深色 / 跟随 DSH / 跟随 Windows。改完立即生效,原生标题栏与页面同色。
- 完整设置页(设置 → 悬浮窗):外观 / 窗口 / 行为 / 缓存与日志四张卡片。
- 缓存与日志清理:标题栏按钮或设置页里的「清理」,两个入口做同一件事。
清不到的部分在关窗后与下次启动时各补清一次。日志超 18 MB 自动轮转,三份约 54 MB 封顶。
安装
git clone https://github.com/cyh3436332528/dsh-float-chat.git
cd dsh-float-chat
dsh plugin --profile desktop add ./plugin
# 然后重启 DSH Desktop要点:
- 仅支持 Windows 10 / 11,且需要 DSH Desktop(Web 版不能完整工作)。
.exe与 WebView2 DLL 已入库,不需要 .NET SDK 或 WebView2 SDK。- 装完必须重启 DSH Desktop 一次(宿主半边不热重载)。
⚠️ 三条要知道的事
- 仅 Windows。 窗口是 WinForms + WebView2 程序,macOS / Linux 上没有实现。
window/webview-data/里存着你的 DSH 认证 cookie。 它已被.gitignore排除——
提交任何东西之前请确认它不在暂存区;也不要整个删掉它(会丢登录态与对话关联)。window/window-log.txt会记录带 token 的认证 URL 与渲染器能力头值。
上报问题前请先删掉这些值。详见 README 的「风险提示」。
已知限制
- 仅 Windows;DSH Web 版不能完整工作。
- 宿主半边不热重载,改
host.js必须重启 DSH Desktop。 - 同一个插件只有一个浮窗进程,重复点「浮窗」不会开第二个窗口。
package.json缺少dsh.compatibility声明(没有机器可读的版本区间)。- 无自动化测试。
dsh.client.inject依赖@deepseek-ai/dsh-client-ui-conversation,
该包版本变化可能影响「浮窗」按钮的挂载。
完整变更
见 CHANGELOG.md。