中文EN

dsh-plugin-guard-tool

securitynpmMIT

注册一个 agent 工具 plugin_guard,在安装前对 DSH 插件包做静态扫描,给出判定与原因:缺少或损坏的 dsh.bundle.patch、未声明 dsh.permissions、安装脚本、危险 API 与代码混淆、依赖风险,以及未索引、无法核验的源码。只读:不导入、不安装、不求值、不运行被扫描的代码。

下载量 / Downloads
364

安装

dsh plugin --profile web add dsh-plugin-guard-tool

沙箱测试

这个插件还没测过。提交测试 →

README

dsh-plugin-guard-tool

A DSH plugin bundle that gives the agent one tool: plugin_guard.

Ask it to check a package before it joins your profile, and it answers with the

same verdict, reasons and next command the CLI prints:

> scan ../dsh-plugin-gate before I install it

FAIL  0/100  ·  1 high · 1 medium · 2 low
HIGH  security/dangerous-api  Evaluates code at runtime (lib/rules.js:136)

Next: read the flagged lines before installing; drop --ignore-scripts if the
package needs an install step you did not review

The scan is static and read-only. It never imports, installs, evaluates or runs

the code it looks at, and it never writes to the package.

Install

dsh plugin --profile desktop add dsh-plugin-guard-tool

Or from a checkout, without publishing:

dsh plugin --profile desktop add link:$PWD/plugins/dsh-guard-tool

After the profile restarts the agent has plugin_guard; nothing appears in the

desktop UI, because this bundle ships no client code.

Requires DSH >=0.2.0-rc.1 <0.3.0-0, declared both in peerDependencies and in

dsh.engines.dsh. @deepseek-ai/dsh-tools comes from the host; the bundle only

imports it.

What the tool accepts

argument · type · meaning

target · string, required · a plugin directory (./my-plugin) or an npm package name (dsh-plugin-gate)

json · boolean · return the full machine-readable report instead of the summary

What it does not do

  • It does not install, block, or sandbox anything. A DSH plugin runs in the host

process; the guard is governance and admission, not isolation.

  • It does not fetch the trust index of the profile's CLI. The tool reads the

package on disk and reports; dsh-plugin-guard index and dsh-plugin-guard scan

remain the CLI's job.

  • It cannot see what a dependency does, or what the plugin does at runtime.

Files

index.js          host half: defineTool + ctx.tools.register
spec.js           the tool definition, free of any DSH import (unit tested)
cordis.patch.yml  the bundle patch that mounts the host half
locale/{en,zh}.json  title and description shown by the host
icon.svg          the icon shown by the host

spec.js is kept separate on purpose: the tool's behaviour is testable with

node --test test/smoke.mjs and no DSH installation.

MIT.

以上内容来自 npm 上的 README,我们只做格式化,不改内容。

版本

npm 上共发布:2,最后更新 2026-10-19

链接

GitHub · Homepage · npm

同类插件