dsh-network-proxy-plus:DSH 0.2.x 下的网络代理与 SOCKS5 设置

前言

在 DeepSeek Harness(DSH)里做插件安装、拉 GitHub 依赖、调用远端 API 时,出站 HTTP 往往依赖系统或环境变量里的代理。DSH 0.2.x 的配置模型与 0.1.x 不同,社区里早期的 dsh-network-proxy 在 0.2.1 上无法加载,且只支持填 http(s):// URL,本地常见的 socks5://127.0.0.1:10809 用不了。下面介绍维护者 Lanlan-gys 发布的联网工具类插件 dsh-network-proxy-plus:在设置页可视化配置 SOCKS5 / SOCKS5H / HTTP / HTTPS,保存后立即生效,并同步子进程环境变量。

这是什么

dsh-network-proxy-plus 是 DeepSeek Harness 的网络代理设置插件(MIT 许可证,当前 package 版本 1.0.3)。README 说明它是 DSH 0.2.x 上对 dsh-network-proxy 的可工作替代,并增加了 SOCKS5 支持。插件在侧边栏提供独立页「网络代理」(位于「启动动画」与「桌宠配置」之间),用于选择出口模式、代理类型、地址与端口;字段均为 volatile,改完不重启插件即可换掉 undici 的全局 dispatcher。

社区目录页:https://www.skillhub.cn/plugins/Lanlan-gys/dsh-network-proxy-plus
源码与说明:https://github.com/Lanlan-gys/dsh-network-proxy-plus

SkillHub 等社区目录为独立站点,与 DeepSeek / 幻方无官方从属关系。

相对旧版解决了什么

上游 dsh-network-proxy@1.0.1 面向 DSH 0.1.5,在 0.2.x 上因调用已不存在的 settings.register(namespace, schema, …) 而无法加载,表现为装上后没有设置入口。此外旧版 ProxyAgent 不支持 SOCKS,无法使用 SOCKS5 本地端口。

本插件按 0.2.x 接口在宿主端导出 Config(各字段 .volatile()),监听 loader/volatile-update / settings/document-updated 后更新 dispatcher;并实现 SOCKS5 连接器(Agent({ connect })),支持 IPv4 / IPv6 / 域名目标、用户名密码认证,以及 SOCKS 隧道内的 TLS(HTTPS)。

设置项与默认行为

打开 设置 → 网络代理,可配置:

字段 说明 默认值
模式 跟随系统 / 自定义代理 / 直连 跟随系统
类型 SOCKS5 / SOCKS5H / HTTP / HTTPS SOCKS5
地址 代理地址 127.0.0.1
端口 代理端口 10809
用户名 / 密码 可选,SOCKS5 认证 空

默认「跟随系统」而非「自定义代理」,避免新安装时在没有本地代理的机器上替用户接管网络导致断网。需要自定义时切换到「自定义代理」,地址与端口已预填,修改后点「应用」即可。

行为要点(均来自 README):

  • 立即生效:volatile 字段只更新运行中配置,不重启插件。
  • 回环直连:localhost、127.0.0.0/8、::1、0.0.0.0 始终直连,避免本地服务(如 http://127.0.0.1:11434)被送进代理形成环路。
  • NO_PROXY:启动环境里已有的 NO_PROXY / no_proxy 仍生效。
  • 子进程环境变量:自定义或跟随系统模式下,会将代理信息同步给 bash / pwsh 等子进程(curl、git、pnpm 等)。SOCKS5 仅设置 ALL_PROXY;HTTP(S) 代理设置 HTTP_PROXY / HTTPS_PROXY / ALL_PROXY;NO_PROXY 会补上回环地址。
  • 跟随系统:Windows 读注册表 Internet Settings(含 ProxyOverride);其他平台读启动时的 HTTP(S)_PROXY。系统代理关闭时还原为启动环境(等同直连)。PAC(AutoConfigURL)不支持,需改用手动模式。

安装与启用

插件以 DSH 进程权限运行,安装前请自行查看仓库源码与 MIT 许可证。

方式一:从 GitHub 安装(推荐)

在 DSH 插件管理器中使用 GitHub 安装源:

github:Lanlan-gys/dsh-network-proxy-plus

该方式下 pnpm 会正常安装依赖(如 undici)。

方式二:本地目录(开发)

本地 link 安装时需在该目录执行 pnpm install --prod,再将绝对路径作为 bundle 安装;修改 client.js / index.js 后可由 HMR 热加载。

装好之后

  1. 打开 设置,侧边栏应出现「网络代理」。
  2. 选择「自定义代理」,类型选 SOCKS5,地址 127.0.0.1,端口改为你本机代理端口(例如 10809),点「应用」。
  3. 状态显示「已生效」即表示已接管 Harness 内 Node 出站请求(fetch / undici)。

典型用法

本地已有 SOCKS5 监听在 127.0.0.1:10809 时,按上面第三步配置即可。若代理需要认证,在同一页填写用户名与密码后应用。

需要与系统代理一致时,保持模式为「跟随系统」,无需手填地址(Windows 下注意 PAC 不受支持,需改为自定义或系统手动代理)。

完全不走代理时,将模式设为「直连」。

适用场景与限制

适合:在 DSH 0.2.x 上需要 SOCKS5 / SOCKS5H,或希望在 Harness 设置里统一管理代理与子进程环境,而不是只依赖 shell 里的 export。

限制(README 明确列出):

  • 不支持 PAC(AutoConfigURL)。
  • 只影响 Harness 进程内的 Node 出站与其派生子进程;浏览器自身流量仍由系统代理决定。
  • 除回环与 NO_PROXY 外,内网地址不做额外旁路,一律走代理。

插件结构简要:index.js(宿主 Config、SOCKS5、dispatcher、环境变量)、client.js(设置页 UI)、cordis.patch.yml 等。

结尾

dsh-network-proxy-plus 面向 DSH 0.2.x,用独立设置页提供四种代理类型与三种出口模式,强调保存即生效、回环直连与子进程环境同步。需要安装源与完整行为说明时,见 GitHub README;在社区目录可查看分类「联网工具」下的条目。

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

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

小夜