概览
dsh-update-copilot
源码级技术说明Update copilot for DeepSeek Harness: full version radar over the DSH core, shipped bundles, and every installed plugin (merged package-centric across profiles); gated one-click plugin updates behind the full compatibility gate, a single pinned core update execution, patch-name audits with post-flight probes, history & rollback. · DSH 更新助手:本体/bundle/插件全量雷达(跨 profile 按包合并);插件更新带预检闸门一键执行,本体始终钉最新健康版本代执行(全套兼容闸门),补丁名体检与更新后探测,历史快照与回滚。收起技术说明
README / ZH
插件文档
目录摘要
dsh.pub 核对固定版本的组合包契约、运行时事实与分发语义;完整 README 请查看源仓库。
在 GitHub 阅读完整 READMELIMITATIONS
已知限制
- Every changed update requires a `dsh` restart to take effect: the result reports `requiresRestart: true` and the popup shows the restart hint. There is no in-process hot reload. - `link:`/`file:` checkouts are listed in the radar but never probed or updated: manage them inside their own repository (git pull there). - Unauthenticated GitHub API is rate-limited (60 req/h) — breaking-change signals degrade gracefully to none. - Raw `git+https://` specs are reported as-is without a comparison channel. - The host export check is static named imports: dynamic `import()`, APIs only reached at runtime, and `import * as ns` are not flagged. Official `@deepseek-ai/*` packages are skipped. The target pass only packs `@deepseek-ai/dsh-*` at the DSH version line; a failed pack or an independently versioned package (`cordis`, `schemastery`) is skipped rather than reported as incompatible. - The peer-range check covers the common range forms (caret, tilde, intervals, unions, wildcards, exact) with node-semver's prerelease rule; exotic range syntax reads as "cannot evaluate" and stays silent. History snapshots are best-effort — an unwritable history directory means no rollback suggestion, never a blocked update.
