dsh-netguard
在终端中运行以下命令:
dsh plugin install JackZo400/dsh-netguard
将以下提示词粘贴到 DeepSeek Harness 对话框中:
在 DeepSeek Harness 中执行 dsh plugin install JackZo400/dsh-netguard,即可从 https://github.com/JackZo400/dsh-netguard 安装本插件。
插件介绍
在 DeepSeek Harness 里,插件经常要根据聊天或模型给出的地址去拉图、拉音频或访问回调。这些 URL 本质是用户可控的字符串,而运行环境往往比终端用户更有权:一次没拦住的请求,就可能打到本机管理口、内网设备,甚至云元数据接口。只检查入口 URL 的写法尤其危险——域名可以解析到内网,公网服务器也可以用 302 把你引向别处。
dsh-netguard 把「能不能出网」收成一套可复用的护栏:以 netguard 服务供其它插件调用,避免每个插件各自写一遍地址判定;可选的 fetch_url 工具默认关闭,避免无意把外部内容直接灌进模型上下文。核心思路是「解析到的每一条地址都判、重定向的每一跳都重新判」,并覆盖 IP 变形写法、IPv4-mapped IPv6、多 DNS 记录、流式大小上限与整条跳转链共享超时等常见漏点。
适合需要安全拉取外部资源的插件作者,以及希望在 Harness 里统一出网策略的部署方。若你已有 isPrivateIp 一类逻辑,也可以对照 README 中的能力清单评估是否仍缺解析与重定向复查;判定纯函数 src/ip.js 也可在不依赖 dsh 的场景单独复用。
使用场景
- 插件根据聊天或模型给出的链接拉图、拉音频或访问回调
- 多个插件需要统一的出网地址判定,避免各自实现漏掉重定向或 DNS
- 希望在 Harness 中可选地为模型提供受控的外部 URL 拉取能力
适合人员
- 开发需要访问外部 URL 的 DSH 插件作者
- 负责 Harness 部署与安全策略的运维或平台同学
- 正在评估或补强现有私网 IP 判定逻辑的 Agent 团队