🎁 福利专区全网大模型免费应用 + 新用户福利 + 注册活动入口,低成本玩转 AI

装前守门 quan-v/dsh-safe-gate

DeepSeek Harness
quan-v50 天前有提交已提供中文文档扫描:无法判定

安装插件前扫描供应链与源码风险,提前拦雷

30.4/100
综合分
1
GitHub 星标
—
npm 周下载
—/5
用户评分

数据截至 2026/9/18 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。

自动兼容检查未通过:仓库缺少 package.json,无法用 dsh 插件安装命令安装。以下命令仍可尝试,但可能失败。
无法用 dsh 插件命令安装(仓库内无 dsh 插件清单)
git clone https://github.com/quan-v/dsh-safe-gate.git
按该仓库 README 的原生方式安装;若作者另行发布了 DSH 插件包,请以其文档为准

状态速览

判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态
信任档位:需留意
是什么
dsh 原生插件 · security
装得上吗
实装验证未通过(unknown),装前请到仓库确认最近更新与 issue
L4 · 真实安装等级说明 →
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 50 天前
档位由哪些信号合成

本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。

验证判据与等级说明 →
⚠︎ 实装验证未通过(unknown · 2026/11/2) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装

仓库缺少 package.json,无法用 dsh 插件安装命令安装

展开查看检查明细 ↓

以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。

✗npm 包dsh-safe-gate(未发布到 npm,仅可源码安装)
✓Node 引擎未声明 engines.node
✓dsh CLI 依赖未声明 dsh 版本约束
✗入口文件缺少入口声明

源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。

验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/7 01:12:56

安全扫描自动 · 静态分析源码
v2.7.0
⚪ 扫描:无法判定尚无人工评估
展开查看扫描说明与证据 ↓

已尝试扫描但取不到可分析的源码:仓库或包不存在、已删除,或为非 JS/TS 实现、未随包发布源码。无法判定,不代表安全。

  • · 取源不可用(Error: github tarball HTTP 404 @ https:
  • · api.github.com
  • · repos
  • · quan-v
  • · dsh-safe-gate
  • · tarball)
扫描于 2026/11/4(0 天前)

静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。

给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个

功能亮点

  • OSV供应链扫描
  • 插件契约检查
  • 安装前风险拦截

dsh 装前守门:OSV 供应链扫描 + 插件契约检查。(由智能体制作)dsh 插件和 MCP 的装前安全闸。(AI 智能体生成)

README

由 DeepSeek 最新模型翻译生成
dsh-guard 装前守门工具 —— 给 DeepSeek Harness 插件 / MCP 服务器在做安装、运行之前把一关。 English README 命名说明:仓库名是 dsh-safe-gate,工具/命令名是 dsh-guard —— 同一个项目。git+ 安装 URL 用仓库名,命令行用 dsh-guard。 它不替你做决定,但在你(或你的 agent)装东西之前,用三套检查提前拦雷:供应链(这个包是不是已知投毒/坏版本)、契约(这个插件代码会不会让 dsh 加载就崩)和源码敌意(这段代码会不会在你机器上干危险的事——读密钥、shell 与联网串起来、留持久化后门)。 它能干什么 | 检查类型 | 拦什么 | 判定 | | 供应链 | 查 OSV.dev(免费,含 MAL-* 恶意软件命名空间)确认 npm 包是否已知恶意/脆弱;版本未 pinning 也提示 | block / warn / allow | | 契约 | 静态检查会让 dsh 加载失败的模式:非 async 函数里的 await、inject 服务不在白名单、keyed slot 缺 key、adapter 缺 prepareCall | error / warn |
展开完整文档(README 剩余 1 节)
dsh-guard

装前守门工具 —— 给 DeepSeek Harness 插件 / MCP 服务器在做安装、运行之前把一关。

English README

命名说明:仓库名是 dsh-safe-gate,工具/命令名是 dsh-guard —— 同一个项目。git+ 安装 URL 用仓库名,命令行用 dsh-guard。

它不替你做决定,但在你(或你的 agent)装东西之前,用三套检查提前拦雷:供应链(这个包是不是已知投毒/坏版本)、契约(这个插件代码会不会让 dsh 加载就崩)和源码敌意(这段代码会不会在你机器上干危险的事——读密钥、shell 与联网串起来、留持久化后门)。

它能干什么

| 检查类型 | 拦什么 | 判定 |
| 供应链 | 查 OSV.dev(免费,含 MAL-* 恶意软件命名空间)确认 npm 包是否已知恶意/脆弱;版本未 pinning 也提示 | block / warn / allow |
| 契约 | 静态检查会让 dsh 加载失败的模式:非 async 函数里的 await、inject 服务不在白名单、keyed slot 缺 key、adapter 缺 prepareCall | error / warn |
| 源码敌意 | 扫插件源码里的危险行为:投毒标记、eval/读密钥、外传/窃密组合、持久化后门,以及 child_process 中真正走 shell 的用法(exec/execSync;spawn 只在调 shell 本体 bash -c 或调 curl/wget 等外传工具时才报——普通的 spawn/execFile 是插件常态,不打扰) | block / warn |
| 版本跳变 | 自更新时检测大版本跳变(0.x 感知),提前预警破坏性更新。只在 update-guard 里跑,不在装前守门流程内 | warn |

守门判定逻辑(分档严重度)

单一高危信号也报,良性不打扰 —— 这是"准确"的关键,避免 warn 疲劳:

- 🔴 block:投毒/外传标记(kitty-monitor、harkonnen、melange、/bin/sh -c…)
- 🟡 warn(单独):高危单一信号(child_process.exec、eval、读具体密钥)
- 🟡 warn(组合):读密钥+联网 / shell+联网(中危,良性单独出现不报)
- ✅ 忽略:真良性(setInterval、裸 fetch、泛 process.env)

已知边界

静态扫描看的是代码长相,所以下面这些它抓不到。写在这里,免得你以为它比实际更有用:

- 变量间接:const B = "bash"; spawn(B, ["-c", "curl …"]) —— 程序名不是字面量就不认。
- 解释器包裹:spawn("env", ["bash", "-c", …])、spawn("python", ["-c", …]) —— 中间套一层就绕过了。
- 无网络的纯破坏性命令:spawn("bash", ["-c", "rm -rf /"]) 不会报 —— 它主打的是外传 / 窃密 / 投毒,破坏性命令不在覆盖承诺内。
- 动态拼出来的行为:命令从远端下载、或运行时拼字符串,静态看是看不出来的。
- 误报仍会有:它按模式判断,不读意图。看到它报,结论应该是"值得看一眼",不是"这插件有问题"。

这也正是它该被怎么用的原因 —— 它是一道提醒你多想一秒的检查,不是安全保证。
市场里的插件有上架审核,那才是你的主要防线;这个东西管的是从市场以外装进来的东西。

安装

不碰 npm、也不需要 PyPI 账号。三种方式任选:

方式一:从 GitHub 直接跑(推荐,无需安装任何账号;@v0.1.8 锁定版本 —— 守门工具自己也不许 main 漂移) uvx "dsh-guard @ git+https://github.com/quan-v/dsh-safe-gate.git@v0.1.8"

方式二:pip 从 GitHub 直接装
pip install "git+https://github.com/quan-v/dsh-safe-gate.git@v0.1.8"

方式三:克隆下来直接跑(零依赖安装,最透明)
git clone https://github.com/quan-v/dsh-safe-gate.git
cd dsh-safe-gate && git checkout v0.1.8 && python dsh_guard.py check "@antv/mcp-server-chart@0.11.10"

说明:本项目未发布到 PyPI(作者无 PyPI 账号),所以不走 pip install dsh-guard。上面三个方式都能用,uvx 或 pip install git+ 最省事,克隆最透明。核心逻辑零依赖(除可选的 tree-sitter),也能当单文件直接跑。

用法

供应链(block / warn / allow) dsh-guard check "@antv/mcp-server-chart@0.11.10" # → BLOCK(MAL-2026-4069) dsh-guard check "@antv/mcp-server-chart" # → WARN(未 pinning) dsh-guard check "@antv/mcp-server-chart@0.9.10" # → ALLOW

契约(本地插件文件,server / client 分半) dsh-guard check-file ./my-plugin/index.js # server 半 dsh-guard check-file ./my-plugin/client.js --client # client 半

源码敌意扫描 dsh-guard scan ./my-plugin/

一起查 dsh-guard all "@antv/mcp-server-chart@0.11.10" ./my-plugin/index.js

守门后放行(检查通过才执行 delegate) dsh-guard safe-add "@antv/mcp-server-chart@0.9.10" --path ./my-plugin/index.js --delegate "dsh plugin add ..." warn 级发现时:safe-add 会交互确认;非交互环境(agent)需加 --yes 才放行

审计日志(每次检查留证据链 → ~/.dsh-guard/audit.jsonl) dsh-guard log [-n 10] [--grep 关键词]

自更新(快照 → diff → 大跳变预警) dsh-guard update-guard [--exec "更新命令"]

可视化 consent 卡片(本地网页) dsh-guard ui [--port 8170]

任意命令加 --json → 机器可读输出。

作为 MCP 工具接入 dsh

dsh mcp add dsh-guard -- uvx "dsh-guard @ git+https://github.com/quan-v/dsh-safe-gate.git@v0.1.8" --mcp
dsh 的 agent 就能调用 dsh_guard_check 工具 —— 装任何插件/MCP 服务器前先问它。

dsh 插件(安全配置面板)

除了命令行,还有一张嵌进 dsh 插件配置面板的卡片(dsh-guard-panel),显示守门状态和历史拦截日志。守门逻辑仍由 Python 工具承担,插件只做“查看面板”。要安装时用 dsh plugin --profile web add(本地 file: 方式)。

审计日志

每次检查的结论(时间 / 命令 / 目标 / verdict)都记到 ~/.dsh-guard/audit.jsonl,用 dsh-guard log 查看,留证据链。

平台

tested on Windows;cross-platform by design。 需要 Python ≥ 3.9;node --check 需要 Node ≥ 18(可选,通过 shutil.which("node") 解析)。

性能边界(为什么它不是杀毒软件)

dsh-guard 是决策点闸门,不是常驻杀毒守卫:

- 只在“装/跑”这一动作时查一次,查完即退,零后台占用。
- 本地扫描实测 免责声明:本工具是“已知威胁守门”,不是绝对防护。安全没有银弹 —— 别因为装了它就对任何包盲目放行。

作者声明

我是一个不深谙编程的 dsh 用户。这个工具的检查逻辑通过了自动化测试(见上方各命令及测试章节),但——

我本人并不清楚它在真实场景里究竟有几分用处。

它可能真拦住了投毒包,也可能有漏网、有误报。我只是知道「装东西前多问一句」比「直接装」更稳,但没法担保效果。

请务必自行验证后再依赖它。 别因为作者写了这堆测试通过,就以为它万无一失 —— 那反而是我写这段想拦住的事。

如果你用下来发现它有误报、有漏网、有哪里不对,欢迎提 issue 指正。我是外行,你说的可能就是我没看到的问题。
预览分享卡片长什么样 ↓quan-v/dsh-safe-gate
分享 · DeepSeek Harness Hub
quan-v/dsh-safe-gate

安装插件前扫描供应链与源码风险,提前拦雷

这是你的仓库?认领条目

回到顶部