Bundle
dsh-install-guard
DeepSeek Harness 插件安装前兼容性预检守卫:检查 Node/engines、@deepseek-ai 核心包 peer 版本与 dsh 清单,支持隔离试启动与确认后修复安装,防止版本不兼容导致崩溃。
- Source
- 618527
- License
- MIT
- Updated
- Updated 5 days ago
Readme
# dsh-install-guard · Plugin Install Guard
Pre-install compatibility guard for DeepSeek Harness plugins. Before you download/install a marketplace plugin, it checks whether the plugin is compatible with your running DeepSeek Harness — and prevents the "version mismatch → service crash / won't boot" failure.
Once installed, it registers a model tool `plugin_install_guard` so the Agent can run the check before installing.
## Checks
| Check | Description |
|---|---|
| `engines.node` | plugin's Node requirement vs current Node |
| `@deepseek-ai/*` peers | peer/dependency ranges vs resolved versions |
| `dsh` manifest | whether `dsh.bundle.patch` / `dsh.client` is declared |
| isolated trial boot (opt-in `trial=true`) | install into a throwaway profile + `--dump-config`, actually runs `apply` to catch runtime/load-time crashes |
## Install
```sh
dsh plugin --profile web add dsh-install-guard
```
Restart `dsh web`.
## Usage (two-phase, via chat)
```
1) check:
plugin_install_guard { spec: "plugin-name", action: "check" } # add trial: true to run apply
2) install after confirming:
plugin_install_guard { spec: "plugin-name", action: "install", resolution: { spec: "plugin-name@compatible" } }
```
## Relation to other plugins
- `dsh-doctor` = environment health; this plugin = version compatibility.
- `dsh-poison-guard` / `DSH-Plugin-Market` = security/audit; this plugin = compatibility.
Use them together: security audit + compatibility preflight = the full pre-install gate.
## Limitations
- Actively-triggered tool, not an automatic hook on the marketplace install button.
- Static checks + trial boot reduce but cannot eliminate all third-party-code risk.
## License
MIT
Install
dsh plugin --profile web add github:618527/dsh-install-guard
Profile: web
With the hub plugin installed, ask your agent to install it by name — it resolves the same plan shown here.
dsh plugin --profile web add github:stvlynn/dsh.fish#path:packages/dsh-plugin-hub
install dsh-install-guard from the hub
- This source has no pinned commit, so a later push upstream changes what installs. Prefer pinning a commit.