让 dsh 的 LLM 请求统一走指定 HTTP 代理
30.4/100
综合分
5
GitHub 星标
—
npm 周下载
—/5
用户评分
数据截至 2026/9/18 · 周下载取自 npm 全网(含 CI / 镜像),非本站安装数;综合分由星标、活跃度与兼容性检查合成。
该插件未发布到 npm,按作者文档从 GitHub 源安装即可(静态检查只覆盖 npm 路径,不代表插件不可用)。
安装命令 · 需先装 dsh CLI 引擎
dsh plugin --profile web add Ye-Yu-Mo/dsh-llm-proxy该包不可直接 npm 安装,改从 GitHub 源安装(明细见下方安装检查)
状态速览
判定依据:实装验证 · 静态安装检查 · 自动扫描 · 仓库维护状态信任档位:需留意
是什么
dsh 原生插件 · model
安全吗
本站尚未对该插件做风险分级
暂未覆盖,不等同于无风险
还在维护吗
更新放缓:最近一次提交在 79 天前
档位由哪些信号合成
本站实装验证(真实安装 L4 覆盖全站;L5 为运行时冒烟或实机截图,覆盖范围小于 L4) · 验证所用 dsh 版本 · 静态安装检查 · 风险分级 · 仓库维护状态。 下方各区块是它的证据明细。
⚠︎ 实装验证未通过(unknown · 2026/11/2) ——可能是验证环境差异,装前建议到 GitHub 仓库确认最近更新与 issue。
社区实装还没有人打卡 · 装过的第一个就是你
安装兼容性检查需源码安装engines.node 要求 >=24,不满足 Node 22.19.0
展开查看检查明细 ↓
以下结论由程序自动检查 npm 包、engines 声明与入口文件得出,未做人工实机验证——能装不等于用着没问题。
✗npm 包dsh-llm-proxy(未发布到 npm,仅可源码安装)
✗Node 引擎要求 >=24 · 基线 Node 22.19 不满足
✓dsh CLI 依赖未声明 dsh 版本约束
✓入口文件main/exports/bin 已声明
源码安装时若 pnpm 拦截 prepare 脚本,按其提示在 pnpm-workspace.yaml 的 allowBuilds 中放行后重跑。
验证方式:npm registry 存在性 + package.json 静态校验 · 最后检查 2026/10/6 14:18:05
安全扫描自动 · 静态分析源码v2.7.0🟢 扫描:未发现敏感能力尚无人工评估展开查看扫描说明与证据 ↓
安全扫描自动 · 静态分析源码
v2.7.0静态扫描未发现敏感能力:最多只发网络请求、读取自身元数据或只读文件,未发现执行命令、文件写入或敏感信息读取。
发起外部网络请求
查看扫描证据(共 9 处,展示前 8 条)
- 发起网络请求lib/index.js:27
const baseDispatcher = getGlobalDispatcher() - 发起网络请求lib/index.js:39
const agent = new EnvHttpProxyAgent({ - 发起网络请求lib/index.js:44
setGlobalDispatcher(agent) - 发起网络请求lib/index.js:48
setGlobalDispatcher(baseDispatcher) - 发起网络请求lib/index.js:61
ctx.effect(() => () => setGlobalDispatcher(baseDispatcher)) - 发起网络请求lib/index.js:94
const agent = new EnvHttpProxyAgent({ - 发起网络请求lib/client.js:49
fetch('/api/llm-proxy/status') - 发起网络请求lib/client.js:99
const r = await fetch('/api/llm-proxy/test', {
扫描于 2026/11/4(0 天前) · 范围 入口闭包 + 发布文件清单 · 来源 GitHub 仓库
静态扫描只反映源码中出现的调用,不构成安全背书;人工评估与自动扫描相互独立、互不覆盖。
依赖的 DSH / Cordis 模块
@deepseek-ai/dsh-settings@deepseek-ai/schemastery给这个插件打分还没有人投票↓
用户评分
还没有人投票,来当第一个
功能亮点
- 统一走指定HTTP代理
- 配置化热切换
- 代理状态可观测
README
由 DeepSeek 最新模型翻译生成dsh-llm-proxy
DeepSeek Harness (dsh) 的全局 HTTP 代理插件:用 undici setGlobalDispatcher + EnvHttpProxyAgent 接管 dsh 所有 LLM 请求的代理路由。配置化、热切换、可观测。
License
Node
dsh
为什么需要它
dsh(DeepSeek Harness)用 node 内置 fetch(undici)发 LLM 请求,而 undici 默认不读 http_proxy/https_proxy 环境变量。如果你的 LLM 端点(如 llm-proxy 网关)必须走代理才能访问,dsh 会直连超时。
展开完整文档(README 剩余 1 节)
dsh-llm-proxy
DeepSeek Harness (dsh) 的全局 HTTP 代理插件:用 undici setGlobalDispatcher + EnvHttpProxyAgent 接管 dsh 所有 LLM 请求的代理路由。配置化、热切换、可观测。
License
Node
dsh
为什么需要它
dsh(DeepSeek Harness)用 node 内置 fetch(undici)发 LLM 请求,而 undici 默认不读 http_proxy/https_proxy 环境变量。如果你的 LLM 端点(如 llm-proxy 网关)必须走代理才能访问,dsh 会直连超时。
本插件在 dsh 进程内用 setGlobalDispatcher(new EnvHttpProxyAgent(...)) 全局接管 fetch 的代理路由:
- ✅ 让 dsh 所有 LLM 请求走你配置的代理
- ✅ 热切换:设置变更即时生效,无需重启
- ✅ 可逆:插件停止/禁用时恢复基线 dispatcher,不留进程级残留
- ✅ 可观测:/api/llm-proxy/status 查看当前生效模式,/api/llm-proxy/test 测试任意代理连通性
安装
本插件是 bundle 包(dsh.bundle.patch 清单):dsh plugin add 会把它装进 profile 依赖并自动加入 dsh.profile.bundles,下次启动自动激活,无需手动加 patch 行。
一键安装(发布到 npm 后可直接用包名)
dsh plugin --profile web add dsh-llm-proxy
或直接从 GitHub 安装
dsh plugin --profile web add github:Ye-Yu-Mo/dsh-llm-proxy
开发调试(本地 link):
git clone https://github.com/Ye-Yu-Mo/dsh-llm-proxy
dsh plugin --profile web add link:$(pwd)/dsh-llm-proxy
安装后重启 dsh web 使 bundle 补丁生效;~/.dsh/dsh.log 出现 [llm-proxy] 日志(未启用时为「恢复基线」一行)即装载成功。
配置
通过 dsh 设置页的「LLM 代理」项,或直接编辑 ~/.dsh/settings.yaml:
llm-proxy:
enabled: true
url: http://127.0.0.1:7891 # 你的 HTTP(S) 代理地址 noProxy:
- localhost
- 127.0.0.1
- ::1
| 字段 | 类型 | 默认 | 说明 |
| enabled | boolean | false | 是否启用代理接管 |
| url | string | '' | HTTP(S) 代理地址,如 http://127.0.0.1:7891 |
| noProxy | string[] | ['localhost','127.0.0.1','::1'] | 不走代理的地址 |
⚠️ dsh 设置页只暴露白名单内的配置命名空间。若设置页显示「表单不可用」,需把 llm-proxy 加入 dsh-host-apiproxy 的 WEB_SETTINGS_NAMESPACES(当前为 dsh 已知限制,见下)。
HTTP API
插件注册两个宿主路由(loopback-only,防 LAN 探测):
GET /api/llm-proxy/status
当前生效模式:
{
"effective": { "mode": "setting", "url": "http://127.0.0.1:7891" },
"env": { "httpProxy": "http://127.0.0.1:7891", "httpsProxy": "http://127.0.0.1:7891" }
}
mode 取值:
- setting:走设置的 url
- env:读环境变量代理(HTTP(S)_PROXY)
- direct:直连(无代理)
POST /api/llm-proxy/test
测试任意代理到目标端点的连通性:
// 请求 { "url": "http://127.0.0.1:7891", "probeUrl": "https://llm-proxy.ftai.chat/v1/models", "timeoutMs": 8000 } // 响应 { "ok": true, "latencyMs": 246, "status": 200 }
开发
pnpm install
pnpm test # 单元测试(logic/http-utils)
node scripts/... # 见 scripts/
目录结构:
lib/
index.js # 宿主核心:settings + dispatcher 接管 + HTTP 路由 logic.js # 纯函数配置判定(可单测) http-utils.js # loopback 校验 / JSON 读写 client.js # 设置面板「LLM 代理」页 test/ # 单元测试
已知限制
dsh 设置页的配置命名空间白名单(dsh-host-apiproxy 的 WEB_SETTINGS_NAMESPACES)是硬编码的,第三方插件无法自注册暴露。目前需要手动把 llm-proxy 加入白名单才能让设置页表单可用(dsh 官方已将"插件自注册"列为延后工作)。
已在上游提交讨论:第三方插件无法向 Web 设置页面暴露设置命名空间(Ideas 分类)。
License
MIT预览分享卡片长什么样 ↓
分享 · DeepSeek Harness Hub
Ye-Yu-Mo/dsh-llm-proxy
让 dsh 的 LLM 请求统一走指定 HTTP 代理
相关插件 · 模型接入
API 中继安全审计toby-bridges/api-relay-audit
面向 AI API 中转与 LLM 代理的本地安全审计。
★ 897已汉化DSH
69.4
免费搜索插件DDDMUC/dsh-free-search
DeepSeek Harness 免费搜索插件 —— 无需 API key,零成本,多引擎可切换。 一个插件,给…
★ 850已汉化DSH
68.9
免费联网搜索liustack/modsearch
在官方 App 里模型能联网,切到 API 就不能了。ModSearch 把联网补回来:网页搜索、X…
★ 863已汉化DSH
68.5
OpenCode 免费模型FishBottle7/opencode2dsh
在 DSHDeepSeek Harness里原生使用 OpenCode Zen 的免费匿名模型。
★ 385已汉化DSH
67.9
AI 模型网关tingly-dev/tingly-box
Tingly Box Web UI 演示
★ 373已汉化DSH
67.4
WorkBuddy 账号池XDTrees/dsh-xdpool
把你能白嫖的模型额度接进 DSH 同一个池:WorkBuddy 多账号自动容错、十三家扫码登录、76…
★ 359已汉化DSH
67.1
这是你的仓库?认领条目