Back to home@localSummer

dsh-proxy-env

DSH(DeepSeek Harness)代理环境开关插件

Stars
0
Language
JavaScript
Created
Sep 7, 2026
Updated
Sep 7, 2026
GitHub repo

Introduction

dsh-proxy-env

DeepSeek Harness(DSH)代理环境开关插件:Host 侧设置全局 dispatcher / 子进程代理环境,Web 设置页提供「代理环境」配置卡片。

兼容:dsh >= 0.1.2-rc.1(Web profile)

安装

dsh plugin --profile web add github:localSummer/dsh-proxy-env#main

本地开发(仓库检出):

dsh plugin --profile web add /path/to/dsh-proxy-env

安装后重启 dsh --profile web(或当前使用的 Web 进程)。

--dump-config 确认出现 # == dsh-proxy-env layer,且含 id: proxy-env 行。

卸载

dsh plugin --profile web remove dsh-proxy-env

然后重启 DSH。

功能

  • 模式
    • all:模型 API、子进程、Git、npm 等流量走代理(写 HTTP(S)_PROXY / ALL_PROXY / NO_PROXY)。
    • include:仅代理指定主机清单内的 in-process fetch(子进程 env 不变)。
  • 代理地址http://https://
  • 豁免清单(all):与机器既有 no_proxy 合并,强制包含 localhost,127.0.0.1
  • 安全:代理不可达时启动降级直连并告警;on 在不可达时拒绝写入 enabled=true

配置命名空间:settings.yamlproxy-env 段(设置页 / /proxy / proxy_env 共用)。

配置项

字段类型说明
enabledboolean是否启用
urlstring代理地址,默认 http://127.0.0.1:7890
modeall | include代理模式
proxyHostsstring[]include 模式下的主机清单
noProxystringall 模式豁免清单

也可在设置页「代理环境」中编辑。

命令与工具

/proxy

/proxy on [代理地址]
/proxy off
/proxy status

proxy_env

  • action: on | off | status
  • url / mode / proxyHosts / noProxy(可选)

包结构

dsh-proxy-env/
├── package.json          # dsh.bundle + dsh.client
├── cordis.patch.yml      # 插入 id: proxy-env
├── index.mjs             # Host:settings / tools / commands / dispatcher
├── client.js             # Web:settings.section 卡片(ModuleLoader 工厂)
├── LICENSE
└── README.md

开发说明

  • Host:export const inject = ['tools', 'commands', 'settings'];卸载时经 ctx.effect 还原 dispatcher 与环境变量。
  • Client:window.__ModuleLoader__.load({ id: "dsh-proxy-env", ... }),注入 slots + settingsScope
  • 运行时依赖:schemasteryundici(已写入 dependencies)。

作者

localSummer · v0.1.0 · MIT