wjt0321/dsh-git-proxy:DeepSeek Harness 的按需 GitHub 代理插件

DeepSeek Harness (DSH) 采用插件化架构,旨在通过扩展满足多样化需求。在开发或测试环境中,有时需要通过代理访问 GitHub,但并不希望长期占用系统配置。wjt0321/dsh-git-proxy 提供了一个 Web UI 开关,允许用户按需配置 git 和 SSH 代理,并在下载完成后恢复直连。

核心功能

该插件主要解决 GitHub 访问的代理配置问题,具体能力包括:

  • 一键开关代理:在 Web UI 中控制 git 和 SSH 代理的开启与关闭。
  • 保存代理地址:输入并保存代理地址,按 profile 存储于本地。
  • 下载前测试连通性:在下载前验证代理端口与 GitHub 隧道的连通性。
  • 自动配置:
    • 配置 git 的 https 代理。
    • 配置 ssh 的 ProxyCommand。
  • 地址校验与移除:校验代理地址格式,并在关闭时移除配置。

安装与启用

通过插件市场安装,或使用命令行:

dsh plugin --profile web add github:wjt0321/dsh-git-proxy

重启 Web UI 后,打开 设置 → Git 代理。

典型用法

  1. 输入代理地址:在界面中输入代理地址(如 127.0.0.1:10808)并点击保存。
  2. 开启代理:点击开启代理,插件会执行以下配置:
    • Git (HTTPS):执行 git config --global http.https://github.com.proxy http://<地址>。
    • SSH:在 ~/.ssh/config 的 Host github.com 块写入 ProxyCommand(使用 Git for Windows 自带的 connect 工具)。
  3. 验证连通性:点击测试连通性,验证代理端口与 github.com:443 / github.com:22 的隧道是否畅通。
  4. 执行下载:进行 git 拉取或克隆操作。
  5. 关闭代理:下载完成后点击关闭代理,两项配置立即被移除,恢复直连。

注意事项与限制

  • 依赖环境:SSH 代理功能依赖 Git for Windows 自带的 connect 工具,缺失时 SSH 部分将标记为不可用。
  • 代理要求:不支持认证代理(用户名/密码)和 IPv6 代理地址。代理软件必须处于运行状态,否则开启代理会导致 git 操作失败。
  • 作用范围:仅影响 github.com 的 git 操作(HTTPS 和 SSH),npm/pnpm 包下载不受影响。
  • 配置冲突:如果用户在 ~/.ssh/config 中已存在 ProxyCommand 行,插件会将其插入在其前,并优先读取插件行。若存在 Match 段或多主机 github.com 行,插件会提示并保留原状。
  • 格式处理:编辑 ssh config 会把行尾统一为 LF。

生态背景

DSH 理念是「一切皆插件」,该插件由社区开发者维护,安装前建议检查源码与许可证。

羽毛球分组比赛记分
小程序二维码

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

小夜