dsh-calibguard:在 DSH 里给「执行外来代码」加一道本地门控

前言

在 DeepSeek Harness(DSH)里让智能体安装脚本、解压第三方包或运行下载物时,常见做法是事后补救或完全依赖模型自觉。一旦路径或压缩包来源不明,宿主进程往往会在未审计的情况下直接执行。下面介绍社区插件 dsh-calibguard(维护者 maomitgd2006),它把 CalibGuard 的文件安全审计引擎接到 DSH:默认在本地用校准后的 CodeBERT 给出可解释结论,只有灰区才可选云端复核;同时提供 agent 工具与侧边栏面板两种入口。

这是什么

dsh-calibguard 是发布在 npm 上的 DSH 插件(包名 dsh-calibguard,当前资料中版本 0.3.6,MIT 许可)。本仓库只负责 DSH 集成;审计引擎本体在 CG 项目的 CG_GUI/ 中,插件通过常驻 Python 子进程调用内置 engine/,不复制、不修改上游引擎逻辑。

分类上属于 admin-security。在 SkillHub 插件目录 与 GitHub 仓库 均可查看条目与源码。

核心功能

本地门控与可选上云

  • 默认离线:本地 CodeBERT + Platt 校准输出「恶意概率」及四档结论,文件内容默认不上传。
  • 灰区才上云:仅当本地判定不确定时,可按设置发起一次云端复核(可关闭)。
  • 四档结论:放行(ALLOW)、可疑(SUSPICIOUS)、拦截(BLOCK)、转人工(MANUAL),并附带证据与 Markdown 报告路径。

两种使用形态

  1. AI 工具:calibguard_audit(审计路径)、calibguard_status(引擎与阈值状态)。
  2. 侧边栏面板:盾牌图标,拖入文件或粘贴宿主机目录路径,支持递归目录审计(有文件数量上限时会明确提示)。

面板「设置」与 AI 调用共用 $DSH_HOME/calibguard-settings.json(默认 ~/.dsh);API Key 走 DSH 凭据库或本机 calibguard-credentials.json(视 DSH 版本而定)。

引擎自动准备

装好插件并重启 DSH 后,若缺少 <engineRoot>/.venv(默认 engineRoot 为 ~/.dsh/calibguard-engine),会在后台复制内置引擎、从本仓库 Release 下载约 475 MB 模型权重、创建 venv 并安装 Python 依赖。本机若无合适 Python,安装器可自动拉取便携 Python 3.10.8。首次约需 10–20 分钟,只需一次。检测到满足条件的 NVIDIA GPU 时会自动选用 CUDA 版 torch,否则为 CPU 版。

安装与启用

前提(来自官方 README):DSH 0.1.5-rc.2 实测可用;Node ≥ 20。

桌面端(推荐)

设置 → 添加插件 → 输入包名,然后重启 DSH:

dsh-calibguard

固定版本示例:dsh-calibguard@0.3.3(@ 后为版本号)。也可填写 GitHub 仓库地址 https://github.com/maomitgd2006/dsh-CalibGuard 或本地插件目录路径。

命令行(非桌面 profile)

在对应 profile 下执行:

dsh plugin --profile <profile> add dsh-calibguard

等价还可添加 GitHub URL 或 file:<本包绝对路径>。npm 包页:https://www.npmjs.com/package/dsh-calibguard。

桌面版的 desktop profile 由 Electron 独占,CLI 不能管理;桌面用户请用「添加插件」或 cordis.patch.yml 的 file:// 方式。

验证

重启后左侧边栏出现盾牌图标,面板顶部显示引擎就绪与阈值状态;或在对话中让模型调用 calibguard_status。不经 DSH 的自检:

node scripts/bridge-selftest.mjs

改完 cordis.patch.yml 或面板相关代码后需再次重启 DSH。

典型用法

让 AI 先审再装

用自然语言说明路径即可,模型会调用 calibguard_audit:

安装前先审一下 D:\downloads\setup.py
这个压缩包安全吗?D:\downloads\vendor.zip
把 D:\projects\vendor 目录里可疑的文件过一遍

返回中包含四档结论、校准概率 p、设备(cpu/cuda)、sha256 与报告路径;单次调用还可覆盖 max_files、allow_threshold / block_threshold、llm_enabled 等参数,不影响面板保存的全局设置。

面板手动审计

侧边栏盾牌 → 拖文件进虚线框或粘贴路径 →「开始审计」。压缩包在内存中解包后逐文件审计;结果按严重度排序,可打开 Markdown 报告。

结论怎么读

标签 含义 建议动作
BLOCK 本地高置信恶意 不要执行;查看报告证据
MANUAL 不确定或云端复核失败 人工确认或调整送审口径
SUSPICIOUS 中等概率 结合报告判断
ALLOW 本地判定安全 可继续后续操作

适用场景与注意

适合:需要在 DSH 会话里对下载脚本、安装包、vendor 目录做批量或对话式审计;希望默认本地推理、仅在灰区才送云端;希望面板与 agent 共用同一套阈值与复核策略的开发者。

注意:

  1. 插件以当前 DSH 进程权限运行,审计的是宿主机路径;安装前请自行核对 GitHub 源码 与 MIT 许可证。
  2. 首次自动准备会联网下载模型与 pip 依赖;锁网环境可设 autoSetup: false 后按 README 用 node setup.mjs 或 --from 离线包手动准备。
  3. SkillHub 等为社区目录,与 DeepSeek / 幻方无官方从属关系;插件星标等元数据以目录页为准(资料中 GitHub 1 star)。

结尾

dsh-calibguard 把 CalibGuard 的本地校准门控搬进 DSH 工具链与侧边栏,在智能体动手执行外来文件之前提供可解释的四档结论与报告。需要条目说明可打开 SkillHub:dsh-CalibGuard;安装细节与进阶配置见 GitHub:maomitgd2006/dsh-CalibGuard。

羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye