前言¶
在 DeepSeek Harness(DSH)里做联网抓取、调用 HTTP MCP 或走全局 dispatcher 的请求时,出站流量往往依赖本机已开的 Clash、系统代理等。常见做法是手动改环境变量、开 TUN 或全局模式,或在每次换端口后重新配置 DSH。这些方式步骤多,也容易和 DSH 自带的 NO_PROXY、本机绕过策略打架。
下面介绍社区插件 dsh-auto-proxy(维护者 murenyu1,分类:联网工具)。它在 DSH 内提供开关,自动发现本机 HTTP/混合代理端口,通过固定回环入口把运行中的 DSH 接到该代理上;关闭或卸载时可恢复开启前的代理策略。设计参考了 SuiSuiNian721 的 codex-connection-monitor 中「固定本地代理入口、动态切换上游」的思路,并针对 DSH 的插件生命周期与原生代理 API 做了适配。
这是什么¶
dsh-auto-proxy(npm 包名 dsh-plugin-auto-proxy)面向已在本机运行代理软件、又希望 DSH 出站走同一 HTTP/混合端口的开发者。插件不会启动代理软件,也不会代替代理规则选节点;只负责检测可用端口、校验连通性,并把 DSH 接到 127.0.0.1 上的固定入口,上游端口变化时只改入口的上游,无需为 DSH 单独开 TUN 或专用启动器。
资料中写明:当前 README 对应版本为 1.0.5,已验证宿主为 DeepSeek Harness 0.2.1-rc.2,运行环境 Node 22.21+;真实宿主联网验收在 Windows 完成,曾从 Clash Verge 配置自动识别混合端口 7897。仅提供 SOCKS 或 VPN、没有 HTTP/混合代理端口的软件无法直接接入。
核心功能¶
自动发现与校验¶
发现顺序大致为:优先读 Clash Verge 当前配置的 mixed-port / port,再读已启用的 Windows 当前用户系统代理及 Clash 内核监听端口。不会盲目扫描常用端口,也不把 SOCKS 或内核控制 API 当作 HTTP 代理。
每个候选需通过 HTTP CONNECT、TLS 证书验证和 GitHub HTTPS 响应检查。若 NO_PROXY 包含 * 或 GitHub,插件会报错提示,而不是误报已接入代理。
固定入口与 DSH 集成¶
DSH 连接仅监听 127.0.0.1 的固定 HTTP 代理入口;上游地址变更时,新请求走新上游,已建立连接仍可能沿用旧上游。代理不可用时拒绝新请求,不自动回退直连;显式 NO_PROXY 仍按原设置生效。
插件调用宿主 installProxyFromEnvironment 安装运行中策略,并通过 proxyRouteFor 核对页面抓取路由。资料记载:原生 web_fetch 和普通 Node fetch 已实测;与 DSH 全局 dispatcher 同路径的模型请求、HTTP MCP 会受策略影响,但未对收费模型或用户 MCP 做验收。
多入口与状态同步¶
1.0.5 起支持右侧边栏、底部工作台、对话框底部环境胶囊、插件管理配置卡片等多处操作;内部通过 ProxyStateHub 全局单例总线同步状态。在安装了 dsh-better-sidebar 时可从右侧「自动代理」标签进入;未安装时仍有原生侧栏选项卡。对话输入框下方可显示紧凑状态胶囊,点击可切换启停。
安全与边界¶
入口仅本机监听,限制并发,拒绝带 Origin 的浏览器请求;插件自身入口不会成为上游(自循环保护)。不修改 settings.json、系统代理、Clash 配置或证书策略;不解密 HTTPS,不记录请求正文。
若 DSH 启动时已存在代理环境变量,宿主 API 可能保留它们给子进程,插件会提示,不能保证 git、gh 或子进程 MCP 一定改用本插件入口。已运行的子进程、独立浏览器、工作流 worker 和 PTC 不会被强制接管。
安装与启用¶
推荐在 DSH 插件管理页通过「本地安装包」选择 dsh-plugin-auto-proxy-1.0.5.tgz(Release 附件或源码打包产物在 downloads/ 下的实际路径以你本地为准)。
CLI 管理时,在安装包所在目录执行(将 web 换为实际 profile):
dsh plugin --profile web add ./dsh-plugin-auto-proxy-1.0.5.tgz --ignore-scripts
官方桌面版的 profile 由应用管理,优先用应用内安装。安装命令只用于登记插件;开关与代理切换不需要重启 DSH(是否需宿主重新加载由 DSH 管理器决定)。
典型用法¶
- 正常启动本机代理软件和 DSH。
- 在右侧边栏、下侧工作台、底部胶囊或插件配置卡片中开启「自动代理」并保存。
- 状态同步为「已连接」后,界面拓扑可展示
DSH 入口 ➔ 本机代理 ➔ 外部网络链路。 - 若自动发现不符合预期,在设置中手动填写地址,例如
http://127.0.0.1:7897,保存后立即生效。
关闭「开启自动代理」并保存会恢复插件开启前 DSH 的代理策略;卸载会清理入口并恢复策略。
适用场景与注意¶
适合:Windows 上已用 Clash Verge 等提供本机 HTTP/混合端口,希望 DSH 内 web_fetch、Node fetch 等与桌面代理一致,又不想开 TUN/全局模式的开发者。
注意:
- 插件以当前 DSH 进程权限运行;安装前应自行查看源码与 MIT 许可证,确认可接受其行为范围。
- 代理软件内规则若拒绝某站点,插件无法绕过。
- 辅助发现(注册表、PowerShell、配置文件)失败时会保留已有候选并提示;无任何有效候选时不会假报已连接。
- 社区目录 SkillHub 插件页 与 GitHub 仓库由社区维护,与 DeepSeek/幻方无官方从属关系;DSH 生态强调「一切皆插件」,本文事实以仓库 README 与发布说明为准。
结尾¶
dsh-auto-proxy 把「发现本机 HTTP 代理 → 固定回环入口 → DSH 原生代理 API」串成可开关的一条链路,并附带 GitHub HTTPS 检测与关闭恢复,适合在已开本地代理的前提下减少手工配环境变量的重复劳动。
- 目录页:https://www.skillhub.cn/plugins/murenyu1/dsh-auto-proxy
- 源码与说明:https://github.com/murenyu1/dsh-auto-proxy