ARTICLE · 1289738
DSH插件测评:dsh-unlag 一键换插件代码不重启
AURORA LAB · 前沿观察
DSH插件测评:dsh-unlag 一键换插件代码不重启
看完这篇,你能带走一张 1.15.0 的版本对应表、三个真实场景和三条能直接复制的命令,三步装好 dsh-unlag。建议先收藏。
一、插件简介
dsh-unlag 是 regrevia 做的一个很窄的 DSH 插件:给桌面端窗口右上角加一颗刷新按钮,按下就把插件代码换掉、把卡顿的界面重建一次,宿主里的会话与任务继续跑。装它之前,大家要么关掉 App 重开,要么干等任务跑完。截至 2026-11-01,GitHub 35 星、npm 上周下载 47,178 次。
二、能力与作用
它做的事只有两件:换插件代码、重建界面;其余几项是围着这两件事加的护栏,顺手替你省掉判断。
01
换插件代码 → 不用关 App 再开(只换宿主侧插件代码,相当于给插件做一次热重载,页面仍由人按一次)。
02
重建界面 → 不用重开窗口(同一地址重新载入一次,会话记录和排队消息留在原地)。
03
查 /dsh-unlag/state → 不用猜是版本没刷还是旧代码在跑(version 与 code 分开答,served 还有 unknown 这一态)。
04
演练 npm run smoke → 不用真按按钮就知道此刻可不可按(看 pressPath 与 verify.sound,被拦的原因写进日志)。
05
开「Agent 可以自己刷新」→ 不用人来按(工具名 unlag_refresh,默认关,等于把这一下交给模型)。
06
右键菜单里三行开关 → 不用记配置在哪(换代码、重建界面默认开,Agent 自刷默认关,改完文件自动刷新默认关)。

三、三个具体应用场景
场景 1|改界面插件时手里还有任务在跑
个人开发者。右键那颗按钮,确认「换掉插件代码」「重建界面」两项是开的(默认开),点一下,再打开 GET /dsh-unlag/state 看 version 和 code 是否都变了。宿主自己的轮次、子代理、终端进程照旧跑完,只有被换掉的那个插件自己负责的任务会随实例结束。产出:一个不用重开的窗口,一行带新版本号的日志。
场景 2|插件交付前先自证
插件作者或评审环节。在仓库里跑 npm test 走一遍真实判定,再跑 npm run smoke,看 rehearsal.ok 是否为真、shim.staleRev 能否拿到现在的字节、pressPath 此刻是否放行;被拦的原因去 ~/.dsh/unlag-reload.log 找那行。产出:一段能贴进 PR 的判定结论,写明能刷还是卡在哪一项。
场景 3|界面卡住但草稿还没发
运营、内容同学。不关 App,点右上角按钮重建界面。文字草稿由 App 自己存,排队消息排在宿主里,都不丢;草稿里还挂着没发出去的附件时,按钮会停住让你先发。产出:写了一半的文案还在同一会话里,接着写。

四、对比与版本对应
装之前先把这张表对一遍,对不上就别急着按按钮。
关掉 App 重开能换代码,但会把正在跑的任务一起结束;宿主自带的插件热更新改文件就应用,管不住「什么时候换」;dsh-unlag 只管按下去那一下,两个开关互不影响。三件事可以同时装在一个 profile 里,不冲突。

五、踩坑清单 + 三步上手
四条里,第一条几乎在第一天就撞上。
01
坑 1:浏览器打开 dsh web 没有这颗按钮,它只在桌面 App 窗口里出现,不做网页版。
02
坑 2:按钮不出现、/state 里 served 是 missing,先看 profile 的 dsh.profile.bundles 还列不列着 dsh-unlag——装别的插件时这份清单会按依赖重算。
03
坑 3:草稿里有没发出去的附件时按不动,那是拦截,不是坏了。
04
坑 4:从 GitHub 源装会被 pnpm 拦在 ERR_PNPM_IGNORED_BUILDS,按提示把键加进该 profile 的 allowBuilds 再跑一次。
dsh --version # 先确认宿主 ≥ 0.2.0-rc.1
dsh plugin --profile web add dsh-unlag@1.15.0
dsh web # 重启后进桌面 App,点右上角按钮
三条命令的顺序不能换:先确认宿主版本,再装,最后才重启;反了会以为装了没生效。这四条坑都不用改代码,装之前看一眼,就能省掉一次白折腾。
写在最后
看到这儿,说明你把它读完了。这类文章能走多远,只取决于两件事:你的在看和转发。
顺手关注并设为星标,下一篇更新第一时间见。
END
一起聊聊
你上一次为了换插件代码重启 App,手里正跑着什么任务?
欢迎在评论区说说你的做法。
乌鸦君疯狂学AI
让天下没有难用的AI
#DSH插件# #dsh-unlag# #热重载#















































































