mafeis/dsh-net-proxy
让 agent 的网络请求走本机 HTTP/CONNECT/SOCKS5 代理。
Bundle 已验证
MIT
JavaScript
未知
Bundle 已验证
已收录
4
Tools
Bundle 已验证
★ 4
在 GitHub 查看
预览
功能介绍
让 agent 的网络请求走本机 HTTP/CONNECT/SOCKS5 代理。
适合
- 需要让网页搜索、抓取或外部 API 请求经过本机 HTTP/CONNECT 或 SOCKS5 代理的 DSH Agent。
- 需要代理认证、持久化设置和可配置直连排除项的环境。
- 希望修改代理配置后无需重启 DSH 即可生效的用户。
不适合
- Agent 已可直接联网且不需要代理路由的用户。
- Agent 进程之外的流量;该插件专门处理 Agent 自己发起的网络请求。
- 需要远程代理管理服务、而不是本地配置代理端点的场景。
README
dsh-net-proxy
DeepSeek Harness 网络代理插件:让 agent 自己发起的网络请求(web_search / web_fetch / 外部 API)走你配置的 HTTP / HTTPS-CONNECT / SOCKS5 代理,配置持久化、启动即自动生效,并提供可视化设置页。
- 服务端:包装 agent 进程的全局
fetch,让所有请求走代理(手写转发,无第三方代理依赖)。 - 配置存储在
$DSH_HOME/net-proxy.json,设置页经同源路由/_dsh/net-proxy读写,改动即时生效、无需重启。 -
NO_PROXY默认排除本地回环。
安装
dsh plugin --profile web add github:mafeis/dsh-net-proxy
安装后重启 dsh web,在 设置 → 网络代理 里启用并填写代理地址(如 127.0.0.1:7890)。
也可手动在 profile 的 cordis.patch.yml 加入:
- insert:
- id: net-proxy
name: 'dsh-net-proxy'
配置字段(net-proxy.json)
| 字段 | 默认 | 含义 |
|---|---|---|
enabled |
false |
是否启用代理 |
protocol |
http |
http(含 CONNECT 隧道)或 socks5
|
host / port
|
127.0.0.1 / 7890
|
代理地址 |
username / password
|
空 | 可选认证 |
noProxy |
["127.0.0.1","localhost","::1"] |
命中则直连 |
许可证
MIT
变更记录
v0.2.5
-
index.js的设置路由 handler 抽到lib/routes.js(纯函数,新增 4 项单测,共 24 项全绿)。 -
client.js拆组件:把NetProxySection的巨型 return 拆为Header/StatusBadge/StatusToggle/ProbeResult纯展示子组件(渲染等价、不动 UMD 结构)。 - 新增 eslint 门禁(
eslint.config.js+npm run lint,接入 CI;--legacy-peer-deps适配私有@deepseek-ai/*peer);加.gitignore。
v0.2.4
- 继续工程化拆分:
proxy-fetch.js拆为lib/proxy/{conn,http11,http2,request}.js(连接/隧道与 ByteStream、HTTP/1.1 请求、HTTP/2 请求、入口与协议分发),proxy-fetch.js变为纯 re-export 聚合入口;行为不变,20/20 全绿。
v0.2.3
- 抽取
lib/proxy/body.js的公共响应体解码 sink(makeBodyController),去重 HTTP/1.1 与 HTTP/2 的「按编码建解码器 → dec data/end/error → 收尾」逻辑;行为不变,新增 3 项单测(共 20 项全绿)。
v0.2.1
-
ByteStream分帧读取加固(修复 SOCKS5 CONNECT 头+BND 同帧时 BND 被吞的 bug),新增bytes/config单元测试(共 17 项全绿)。 -
lib/config.js拆为纯配置函数(无 schemastery 依赖,可在无 peer 的本地直接测试);Configschema 移回index.js。
v0.2.0
- 工程化重构:
proxy-fetch.js拆分叶子模块lib/proxy/{errors,no-proxy,parse}.js;删除死代码(顶层readExactly/readHead);抽取createDecoder消除 HTTP/1.1 与 HTTP/2 解压重复;新增@typedef NetProxyConfig类型契约;修复 probe CLI 的--proxy http://...解析。 - 新增 CI(GitHub Actions)与单元测试覆盖(HTTP/SOCKS5 真实连通验证)。
常见问题常见问题
在启用了 DSH 的终端中执行已验证命令 dsh plugin --profile default add github:mafeis/dsh-net-proxy。命令会解析公开 package 元数据,并保持插件与本页展示的目录身份一致。
兼容性以页面上展示的 bundle 与 profile 状态为准。如果某个 profile 尚未检测到,请先保持禁用,并在生产启用前阅读仓库文档。
GitHub 链接和 activity 元数据是 release 与维护状态的来源。新版本发布后重新查看本页,确认目录已经观察到最新版本。