Guojin0826/dsh-plugin-guard ↗★ 0
@guojin-ai/dsh-plugin-guard
Plugin security inspector for the DeepSeek Harness web GUI: statically audits installed plugins (dangerous API patterns + dependency review), layers an AI (default-model) online audit, and renders a green/yellow/red report panel.
安装
npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Guojin0826/dsh-plugin-guard说明文档
阅读完整 README ↗使用指南
报告总览
面板顶部给出汇总统计「N 正常 · N 警告 · N 高危」,并有一个「重新扫描」按钮,可随时刷新当前安装状态。
看懂单个插件
每个第三方插件一行,展示:
- 风险等级徽章(绿 / 黄 / 红);
- 插件名与版本、是否启用;
- 风险分(AI 审计后改由 AI 给出 0–100,未审计时为静态分)、命中规则、声明权限、依赖、扫描文件数。
展开某一行可以看到:自上次扫描的变更(若有:版本变化、新增风险能力 / 声明权限)、所有命中的风险规则及对应文件、声明的宿主服务权限(含不匹配告警)、可疑依赖、以及扫描过程中出现的错误。
AI 在线审计
每个插件行内都有一个「AI 审计」按钮。点击后:
- 实时显示进度(采集证据 → 声誉查询 → 调用模型 → 解析结果);
- 输出判定结论(safe / suspicious / malicious / inconclusive)、关注点、处置建议与声誉佐证。
审计结果会保留:关闭设置面板再打开,已完成的(或仍在进行中的)结果仍然可见;刷新页面后,仍在有效期内的结论与 AI 打分也会从本地缓存自动还原。
结果缓存:审计判定结论写入本地缓存(内容指纹(含默认模型)+ 版本 + TTL,默认 72 小时 = 3 天);声誉证据(npm / OSV / 网络举报 / GitHub)每次都会实时拉新。仅当源码、清单、README 均未变化、未超 TTL,且新拉取的声誉里没有出现新的负面信号(新漏洞 / 恶意记录、新的恶意举报、新增弃用标记)时,才复用上次结论并标注「来自缓存」——一旦出现新负面信号就自动作废缓存、强制重审。面板中提供「AI 缓存 TTL」设置框,可改小时数,设为 0 即关闭缓存、每次都强制重审。每个插件旁的「强制重审」按钮可单独绕过该插件的缓存重审一次,无需改全局 TTL。
GitHub Token(可选)
面板顶部提供 Token 填写区(密码框,不回显):
- 保存 / 清除:填写后保存,状态显示「已配置 / 未配置」;
- 填写 Token 后,AI 审计的 GitHub 查询限额从 60 次/小时提升到 5000 次/小时;
- Token 只保存在本机(
$DSH_HOME/storages/dsh-plugin-guard/github-token.txt),不进会话、不上传。
SafeSkill 技能审计(可选)
本插件集成了微步在线 SafeSkill 平台(https://safeskill.cn),可对当前 profile 中已安装的 DSH Skills 做在线多引擎安全扫描。
- 配置 API Key:在面板顶部的「SafeSkill API Key」输入框中填写你在 SafeSkill 平台申请的 API Key(密码框,不回显),点击保存。Key 只保存在本机(
$DSH_HOME/storages/dsh-plugin-guard/safeskill-key.txt,权限 0600),不进会话、不上传。 - 扫描技能:点击「扫描全部技能」或单个技能旁的扫描按钮,插件会读取该技能目录(
$DSH_HOME/skills//SKILL.md及其附带的支持文件),在客户端完成 CRC32 校验 + 标准 zip 打包(零额外依赖),上传至 SafeSkill 平台,然后轮询拉取报告(最长 5 分钟)。 - 查看结果:扫描完成后,面板展示威胁等级(恶意 / 可疑 / 未知 / 安全)、信任分(0–100)、威胁分类以及各引擎(LLM / 静态 / 动态 / 子文件 / 外链)的判定概要;点击链接可跳转 SafeSkill 报告原文。
- 注意:SafeSkill 是独立的外部平台,扫描结果由微步在线提供;本插件仅负责打包上传与结果回显,不做任何本地判定。未配置 API Key 时该区域不发起任何请求。