KYinCode/dsh-hot-installer
KYinCode★ 1JavaScript最后同步: 2026-08-16
DeepSeek Harness (dsh) 插件热管理器:装一次、重启一次,之后装插件、卸插件、升级插件全部即时生效,不用再重启。 | A plugin that makes installing, removing and upgrading DeepSeek Harness (dsh) plugins take effect instantly — restart once, then never again.
README 摘要
dsh-hot-installer 中文 English 给 DeepSeek Harness 装上之后, dsh plugin add / remove / update 都不再需要重启。 装一次、重启一次,之后这个插件替你监听 profile 的插件清单:新装的包当场挂载、卸掉的包当场卸载、升级的包当场重载;就算你手动编辑了补丁文件,它也会把被冲掉的热装行自动补回来。 这是什么 DeepSeek Harness 里一切皆插件,但你用 dsh plugin --profile web add 装一个新 bundle 后,必须重启 dsh web 它才生效——因为 profile 的插件清单( package.json 里的 dsh.profile.bundles )只在启动时读取,运行中的进程不会再看它。卸载更糟: dsh plugin remove 把包从磁盘删掉,但已挂载的插件行还留在内存里,此时刷新网页会看到 "Failed to load plugins" 报错(客户端还在向已删除的包要代码)。版本更新同样冷:新代码要等重启才会被加载。 这个插件把这条唯一的"冷路径"变热。它装好后常驻在 profile 里,监听清单文件的变化:发现新 bundle 就读取该包声明的补丁( cordis.patch.yml ),把里面的插件行注入到运行中的插件树,loader 的 diff 机制当场激活(实测十几毫秒);发现 bundle 被移除,就按"包→行"映射把对应行从树里摘掉;发现版本号变了,就把行摘掉再重挂,让 loader 重新加载新模块。整个过程不写任何配置文件、不改你的补丁层,重启后依然与正常启动完全一致。 安装与使用 重启之后,插件就永久生效了,日常操作和原来一模一样: 日志在 /.dsh/logs/dsh-hot-installer/dsh-hot-installer.log ,每次热装/热卸/热重载都有记录(如 hot-applied dsh-alive (1 patch entry) 、 hot-removed dsh-alive (1 patch entry) 、 hot-reloaded dsh-pomodoro (0.1.0 - 0.3.0, 1 patch entry) )。 工作原理 清单文件每次变化( dsh plugin add 会写两次:pnpm 写依赖、再同步 bundles 列表,插件用 300ms 防抖合并),插件对比自己维护的快照(包名 → 版本号)找出新增、移除和升级的包。对新增的包:从 profile 的 node modules 解析出包目录,读取它 package.json 里 dsh.bundle.patch 指向的补丁文件(用与启动完全相同的 YAML 方言解析,包括 !!js 表达式),把解析出的 pat…
在 GitHub 查看完整 README →分类
Enhancement suite for Gemini, AI Studio, Claude & ChatGPT — plus a prompt manager for any web UI, DeepSeek Harness included. / 面向 Gemini、AI Studio、Claude 与 ChatGPT 的增强套件;提示词管理器可用于任意 Web UI,含 DeepSeek Harness。
★ 19,485
PicGo/PicGo-Core:zap:The ultimate image uploading engine. Both CLI & API supports.
★ 972
Nagi-ovo/dsh-ads把 DSH 变成 2005 年门户网站|Parody ads, fake games, and popups for the DSH Web UI
★ 455