dsh-network-settings:DSH 网络诊断与安全修复

前言

在 DeepSeek Harness(DSH)里跑 Agent 时,联网问题往往不在代码本身:Windows 系统代理、WSL 环境变量、TUN/VPN 虚拟网卡、DNS 缓存,任意一层异常都会让请求超时或走错出口。手动逐项排查既费时,也不容易把「DSH 进程实际走的路径」说清楚。

下面介绍社区插件 dsh-network-settings(维护者 kanneiren)。它在 DSH 设置界面内完成网络链路可视化、分层探测与受控修复,并把结果整理成 Agent 可读的 Markdown 报告,适合需要稳定访问 DeepSeek 等目标的开发者。

这是什么

dsh-network-settings 是 DSH 的联网工具类插件,面向 Windows 原生、WSL 发行版与 macOS 三种运行模型,提供网络状态展示、链路诊断与安全修复。插件以当前 DSH 进程权限运行;所有检测默认只读,只有用户明确确认后才会修改配置。

核心功能

运行模型与链路图

插件自动识别 DSH 当前运行在 Windows 原生、WSL 还是 macOS。界面会展示 DSH 进程的真实网络路径、DNS 侧支和第一个失败点;若路径经过 TUN/VPN 虚拟网卡,会自动补出物理出口与真实网关。

WSL 场景下的典型链路为:DSH → 发行版 → WSL NAT → Windows Host → 代理 TUN → 物理网卡 → 网关 → 目标。Windows 原生场景则在虚拟网卡后同样接出物理出口。

探测与报告

支持两种检测模式:

  1. 单次检测:采集当前配置,对选定目标做探测,并绘制 DSH 链路图。
  2. 稳定性检测:对 TCP/HTTP 做重复采样。

默认探测目标为 DeepSeek,可随时切换。每层探测与整次检测均有超时上限,网络故障时不会长时间无响应。

「复制网络报告」会生成适合 Agent 使用的 Markdown:固定英文小节标题与 report-version、TL;DR 摘要先行,并附带机器可读的诊断码与分层探测延迟。

网络配置与配置漂移

「网络配置」按来源分组,每个配置项可溯源,主要包括:

  • Windows 代理:WinINet / WinHTTP 状态,以及三个作用域的代理环境变量(含大小写变体)。
  • DSH 进程环境:运行时模型、出口方式(直连或经代理及地址)、代理端口监听进程实测、进程级代理变量。
  • WSL:发行版环境变量、网络模式(NAT / mirrored)、/etc/wsl.conf.wslconfig
  • 高级网络:DNS 缓存、接口路由、Hosts、系统急救操作。

若配置存在差异但网络仍正常,插件只提示「配置漂移」,不发出警告。

推荐修复与安全流程

「推荐修复」仅在高置信度诊断能映射到常用低风险操作时出现,例如清理代理残余环境变量、关闭系统代理、刷新 DNS 缓存。需要管理员权限或高风险的项保留在手动目录,不会自动推荐。

持久化修改遵循固定流程:快照 → 预览 → 确认 → 应用 → 重新检测 → 可回滚。报告与快照在写入本地前会自动脱敏;插件无遥测。

界面使用 DSH 原生组件与 --dsw-* token,不建立独立主题。

安装与启用

环境要求(来自 README):

  • DSH:@deepseek-ai/dsh >= 0.1.0-rc.6(实测 0.1.0-rc.7 – 0.1.1-rc.2,Web profile)
  • Node.js:>= 22.19.0(package.json engines 字段)
  • 平台:Windows 10/11 + WSL;macOS(CI 已验证,真机验收待做)

从 npm 仓库安装(推荐,自带预构建产物):

dsh plugin --profile web add dsh-network-settings

再次执行同一条命令即可更新到最新版。若刚发布的版本被 pnpm 的 minimumReleaseAge 策略暂缓,可指定版本号安装,或稍后重试:

dsh plugin --profile web add dsh-network-settings@<版本号>

安装完成后,打开 DSH 设置 → 插件 → 网络 即可使用。

若需从 GitHub 直接安装,官方备选命令为:

dsh plugin --profile web add github:kanneiren/dsh-network-settings

此方式需在安装现场执行 prepare 构建脚本。若报 ERR_PNPM_GIT_DEP_PREPARE_NOT_ALLOWED,按报错提示将完整 allowBuilds 键写入 %UserProfile%\.dsh\profiles\<profile>\pnpm-workspace.yaml 后重试。npm 仓库安装无此步骤。

安装前建议浏览源码仓库与 MIT 许可证,确认符合你的安全与合规要求。

典型用法

打开插件页面时,默认只显示缓存摘要,不主动执行探测。常用操作如下:

打开页面         → 只显示缓存摘要,不执行探测
[单次检测]       → 采集 + 当前目标探测 + DSH 链路图
[稳定性检测]     → TCP/HTTP 重复采样
[复制网络报告]   → 生成 Agent 可用的 Markdown 报告

遇到复杂问题时,可将复制的网络报告交给 Agent 或对照仓库文档进一步排查:

文档 内容
架构 模块、运行模型、探测、修复保证
诊断流程 诊断结果如何产生与展示
网络急救 操作、风险、可靠性
Agent 指南 开发命令与扩展点

适用场景与注意

适合谁:

  • 在 Windows 或 WSL 上使用 DSH Web profile,需要确认 Agent 实际出站路径的开发者。
  • 怀疑系统代理、WSL 网络模式或 DNS 缓存导致 DeepSeek 访问异常,希望有分层探测与可回滚修复的场景。
  • 需要把网络状态整理成结构化 Markdown,便于与 Agent 协作排查的情况。

使用时注意:

  • 插件以当前 DSH 进程权限运行;修复类操作会改动本机网络相关配置,执行前务必阅读预览与风险提示。
  • macOS 支持已在 CI 验证,真机验收尚待完善,生产环境使用前建议自行验证。
  • DSH 生态遵循「一切皆插件」理念;SkillHub 为社区独立目录,与 DeepSeek / 幻方无官方从属关系。

结尾

dsh-network-settings 把 DSH 场景下常见的代理、WSL 与虚拟网卡问题收敛到同一设置页:先看链路,再分层探测,必要时按快照流程做低风险修复,并把结果导出给 Agent。若你正在为 DSH 联网不稳定发愁,可以从目录页或 GitHub 安装试用。

  • 目录页:https://www.skillhub.cn/plugins/kanneiren/dsh-network-settings
  • GitHub:https://github.com/kanneiren/dsh-network-settings
羽毛球分组比赛记分
小程序二维码

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

小夜