dsh-desktop-mode
Đã xác minh@midnightbell/dsh-desktop-mode · v1.0.0 · MIT · Giao diện web
DSH 桌面版插件:设置页新增「桌面模式」分组,开关一键开启桌面版(独立窗口 + 桌面快捷方式)。
Cài đặt
dsh plugin add @midnightbell/dsh-desktop-mode Xác nhận layer đã áp bằng dsh --profile default --dump-config — xem hướng dẫn cài plugin.
Mã nguồn
Phát hành lên npm mà không có repository công khai. Hãy kiểm tra nội dung package trước khi cài.
Thẻ
Tác giả
Readme
@midnightbell/dsh-desktop-mode — DSH 桌面版插件
在 DSH Web 设置页新增「桌面模式」分组,把 DSH 变成独立桌面应用:
- 开关「启用桌面版」:开启后自动创建桌面快捷方式(
DSH 服务.lnk)并打开独立桌面窗口(WebView2 内嵌界面,无浏览器标签/地址栏) - 「打开桌面版窗口」:随时启动/聚焦桌面窗口
- 「创建桌面快捷方式」:在桌面生成指向桌面程序的快捷方式
- 状态行:显示桌面程序位置、当前是否运行在桌面窗口内
架构:薄壳 + npx
插件自带一个 ~40KB 的薄壳窗口程序(bin/DSH.exe + WebView2 DLL,共 ~0.8MB),
不包含任何 Node 运行时:
- 端口上已有
dsh web服务 → 直接开窗口连接 - 没有服务(如控制台被关闭、或快捷方式冷启动)→ 通过
npx -y @deepseek-ai/dsh web --port <port>自动拉起后台分离服务 (不挂任何控制台,关闭控制台不影响它) - 窗口内置看门狗:服务断开后几秒内自动用 npx 重启并重连——效果上桌面版 “接管”了服务
装了本插件的用户必然已能运行 npx @deepseek-ai/dsh web(插件随 dsh 服务
安装),因此除 Node.js 与 WebView2 运行时(Windows 10/11 自带)外无其他依赖。
安装
dsh --profile web plugin add @midnightbell/dsh-desktop-mode
(等价于在 profile 中安装依赖并把包名加入 dsh.profile.bundles。)安装后
重启 dsh web 服务,设置页左栏即可见「桌面模式」。
卸载
dsh --profile web plugin remove @midnightbell/dsh-desktop-mode
桌面快捷方式(如有)手动删除即可;数据文件 ~/.dsh/.dsh-desktop-mode.json
可留可删。
工作原理
- Host 半(
lib/index.js):注册POST /desktop-api端点,提供load / save / probe / createShortcut / launch;设置持久化到DSH_HOME/.dsh-desktop-mode.json - Client 半(
lib/client.js):注册settings.section(id:desktop), 通过 fetch 调用 host 端点 - 薄壳(
bin/):DSH.exe为 .NET Framework 4.x + WebView2 WinForms 程序,源码见 DSH-Desktop 发行目录src/DSHDesktop.cs
要求
- Windows 10/11(
os: ["win32"]) - Node.js(能运行
npx @deepseek-ai/dsh web) - Microsoft Edge WebView2 运行时(Windows 10/11 通常自带)
License
MIT