You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) DSHDesktop/2.0.18 Chrome/152.0.7977.54 Electron/44.0.0 Safari/537.36
Language
zh
Team
4 Bots, 1 Main, 0 group chats
Models
ss-chat/deepseek-flash, ss/deepseek-flash
The recent errors do not fit in the link. DS Bot copied the diagnostics to the clipboard: paste them below this line.
Privacy / 隐私
This report has no API keys, tokens or personal data. / 报告里没有 API key、token 或个人信息。
Confirmed, and thanks @iron-water for the root-cause analysis and @recall350 for the report.
Since DSH 0.2.1-rc.2 (deepseek-harness commit 879ad372ac), the plugin manager refuses installBundle() for a package the profile already has whenever HMR runs, which is always the case in DSH Desktop; an upgrade there is a removal and an installation. DS Bot's update only calls installBundle('ds-bot@<newest>'), so every update of a registry install fails with already-installed.
The fix goes into 0.2.2: on already-installed, DS Bot removes itself and installs the new version, as the plugin page's Update does for official plugins, and the new version reports how the update ended. Because the button runs the code of the version you have, 0.2.1 and earlier still need one manual update; I will post the steps here once they are checked.
Until then, and once for anyone on DS Bot 0.2.1 or earlier in DSH Desktop 0.2.1-rc.2 or later (the Update button runs the code of the version you have):
In DSH Desktop, open the Plugins page and remove ds-bot.
Add the plugin ds-bot again.
The Bots, chats and memory stay: they live in DS Bot's data folder under the DSH home, not in the package. Checked on DSH Web 0.2.1-rc.2 with HMR: after removing and adding ds-bot again, the Bot and its chat were back and kept working.
Activity
iron-water commentedon Oct 22, 2026
复核后确认是 ds-bot 侧的问题,不是 DSH 的问题。这里补上根因链和证据,避免再开重复 issue。
根因
DSH 的
@deepseek-ai/dsh-plugin-manager里,installBundle()在 HMR 在场时,会拒绝任何「已存在于 profile dependencies 的同名包」:桌面 profile 恒带
profileContext,而 dsh-base 的补丁里 hmr 是:所以
hmr恒存在 →installBundle('ds-bot@0.2.0')必然被拒。但 DSH 自己的「更新」按钮不受影响
DSH 插件页的 update 不是直接
installBundle,而是先卸载再装:也就是说,插件的自更新必须走同一条
remove → install路径;直接调installBundle就会撞上这条守卫。ds-bot 0.2.0 的实际代码
src/host/update.js:207-214:只调
installBundle,没有removeBundle补偿 → 必然already-installed。复现与证据
环境:Windows 10 (26100 x64),DSH Desktop 0.2.1-rc.2(runtime 0.2.1-rc.2 / node 24.21.0 / pnpm 11.28.5),ds-bot 0.1.7 → 0.2.0。
~/.dsh/bot/logs/diagnostics.jsonl的原文:{"level":"warn","source":"host","text":"update to ds-bot@0.2.0 failed: already-installed"}POST /api/bot {"endpoint":"update-install"}直接打同一路径,同样already-installed。pnpm add ds-bot@0.2.0成功(0.1.7 → 0.2.0),说明不是 registry、网络或权限问题。known !== void 0改成known === void 0后,同一 UI 更新链路端到端成功(磁盘node_modules/ds-bot变 0.2.0,package.json依赖同步为0.2.0)——证明唯一阻塞点就是这条守卫。建议修复
在
start()里对已装包先removeBundle再installBundle,对齐 DSH 官方 update 的路径;或者在捕获already-installed时自动回退到remove → install。注意
removeBundle可能返回stop-profile(包正在被运行中的 profile 使用),需要像 DSH 官方 UI 那样处理这个分支,否则在某些状态下仍会失败。Fei2411 commentedon Oct 23, 2026
Confirmed, and thanks @iron-water for the root-cause analysis and @recall350 for the report.
Since DSH 0.2.1-rc.2 (deepseek-harness commit 879ad372ac), the plugin manager refuses
installBundle()for a package the profile already has whenever HMR runs, which is always the case in DSH Desktop; an upgrade there is a removal and an installation. DS Bot's update only callsinstallBundle('ds-bot@<newest>'), so every update of a registry install fails withalready-installed.The fix goes into 0.2.2: on
already-installed, DS Bot removes itself and installs the new version, as the plugin page's Update does for official plugins, and the new version reports how the update ended. Because the button runs the code of the version you have, 0.2.1 and earlier still need one manual update; I will post the steps here once they are checked.Fei2411 commentedon Oct 23, 2026
The fix is in #505 (into
dev, for 0.2.2).Until then, and once for anyone on DS Bot 0.2.1 or earlier in DSH Desktop 0.2.1-rc.2 or later (the Update button runs the code of the version you have):
ds-bot.ds-botagain.The Bots, chats and memory stay: they live in DS Bot's data folder under the DSH home, not in the package. Checked on DSH Web 0.2.1-rc.2 with HMR: after removing and adding
ds-botagain, the Bot and its chat were back and kept working.Update an installed DS Bot under hot reload