D
dsh-hot-reload
v0.1.2 · 2 天前发布
Live-reload upgraded DeepSeek Harness (dsh) plugins without restarting dsh — safe plugins are hot-reloaded in place; unsafe ones are flagged for a manual restart.
README
dsh-hot-reload
English | 中文
无需重启 dsh 即可热重载已升级的 DeepSeek Harness(dsh)插件。
dsh 自带的热重载(cordis-plugin-hmr)刻意忽略 node_modules,所以升级一个已
安装的插件(dsh plugin add pkg@x)通常要整体重启 dsh 才能生效。本插件补上
这个缺口:它监听所在 profile 的 pnpm-lock.yaml,当一个已加载插件包的版本
变化时,就地把运行中的插件换成新版。
行为
插件包升级时,对每个受影响的插件:
你的会话、以及其它所有插件都不受影响、继续运行。
记录一条“需要手动重启
dsh”的提示来加载新代码。两种情况都已处理:- 新代码在加载阶段失败(错误的 import、语法错误)会在触及运行中的插件
之前被捕获——旧插件完全不受打扰;
- 新代码在初始化阶段失败(新的
apply 抛错,同步或异步)会被回滚——旧版本就地重新实例化。
它绝不会替你重启 dsh——重启交给你(以及你的守护进程,如果有的话)。
安装
sh
dsh plugin --profile web add dsh-hot-reload
然后重启一次 dsh(bundle 补丁层在启动时加载)。此后升级即实时生效:
版本兼容矩阵
| DSH 版本 | 状态 | 说明 |
|---|---|---|
dsh@0.1.0-rc.6 | ✅ 兼容 | cordis patch ✅ |
dsh@0.1.0 | ✅ 兼容 | 标准 patch ✅ |
dsh@0.2.0 | ⚠️ 待验证 | 待实测(API 可能在变) |
dsh@0.3.0+ | ❓ 未知 | 尚未发布 |
💡 兼容矩阵每周末自动跑实测,欢迎 PR 修正
元数据
- License
- MIT
- npm
- dsh-hot-reload
- Repo
- git+https://github.com/stuarthu/dsh-hot-reload.git
- Engines
{"node":">=22"}- Weekly DL
- 0
- Monthly DL
- 0
- dsh.bundle
{"bundle":{"patch":"./cordis.patch.yml"}}