DeepSeek Harness Plugin Hub

发布与管理完整 Harness Profiles,发现适合你的插件。

探索

插件目录环境预设文档中心动态

社区

发布插件联系我们报告问题

相关链接

Plugin Hub GitHubDeepSeek Harness 官方项目系统状态隐私说明
© 2026 DeepSeek Harness Plugin HubPowered byPaxTech

独立、非官方社区项目,与 DeepSeek 官方无隶属、授权或背书关系。

Clash Proxy — DeepSeek Harness 插件(DSH Plugin)
DeepSeek Harness Plugin Hub
ProfilesPlugins分类动态文档登录管理 Profiles
ProfilesPlugins分类动态文档登录
← Plugins
C

dsh-clash-proxy

Clash Proxy

Smart routing (智能分流),适用于 DeepSeek Harness 的自包含、零配置规则分流代理插件:基于订阅的路由(国内直连 / 国际流量通过 ss/trojan/vless/vmess/hysteria2/socks5/http 节点),限定在 harness 进程树内,并提供原生 Web GUI 管理页面 — 无需外部 Clash/mihomo 依赖,且无 e

插件会安装到这里;不确定时保持 web。

npx -y @deepseek-ai/dsh plugin --profile web add github:elevenmoon999/dsh-clash-proxy#eb859d739767569a401faf0f6662bc506c97a957
README兼容性版本

说明

Smart routing (智能分流),适用于 DeepSeek Harness 的自包含、零配置规则分流代理插件:基于订阅的路由(国内直连 / 国际流量通过 ss/trojan/vless/vmess/hysteria2/socks5/http 节点),限定在 harness 进程树内,并提供原生 Web GUI 管理页面 — 无需外部 Clash/mihomo 依赖

兼容性与来源证明

Clash Proxy 以 dsh-clash-proxy 发布,当前版本为 0.2.0。Plugin Hub 会校验它的 manifest,并保存精确安装来源,便于复现安装结果。

DSH 兼容范围
*
运行环境
web
发布来源
github
Registry 更新时间
2026/8/25

版本

0.2.0stable
2026/8/25

相关插件

正在加载相关插件…

最新版
0.2.0
DSH
*
HMR
重启进程
Tree shaking
未声明可安全裁剪
解包体积
未提供
文件数
未提供
Surface
web
许可证
MIT
发布源
github
GitHub
★ 0
周下载
0
最近提交
2026/8/25
查看源码 ↗
README Badge

点击下方 Badge 复制 Markdown,粘贴到 README 即可。

这是你的 Plugin?认领权益 · 优先安全扫描

验证 package.json 声明的 GitHub 仓库,即可管理这个公开页面。认领后,Hub 会优先安排当前版本的安全扫描,并在通过后公开展示结果。

认领这个 Plugin →
报告问题

README

dsh-clash-proxy

Smart routing · Self-contained · Easy to start — a self-contained, zero-config rule-splitting proxy plugin.

A self-contained rule-splitting proxy plugin for DeepSeek Harness (DSH). No external Clash/mihomo client: a built-in rule engine plus your subscription nodes give the Harness process tree smooth access to both domestic (direct) and international (proxied) networks — while the rest of your system is untouched.

Features

  • Self-contained, zero external dependencies — mostly pure JavaScript over node:net / node:tls / node:crypto; hysteria2 and vless reality go through a bundled Go native connector (see "Native connector" below)
  • Built-in rule engine — embedded domestic domain suffixes (~110K entries, 467KB gzipped) and domestic IP ranges (IPv4/IPv6), plus subscription rules and custom DOMAIN / DOMAIN-SUFFIX / DOMAIN-KEYWORD / IP-CIDR / REJECT rules
  • Subscription parsing — full Clash configs, bare node lists, base64 bodies, node groups
  • Node transports (international egress):
    • ✅ socks5 / http upstream proxies
    • ✅ ss (shadowsocks AEAD: aes-128-gcm / aes-256-gcm / chacha20-ietf-poly1305)
    • ✅ trojan (tcp / tls / ws)
    • ✅ vless (tcp / tls / ws)
    • ✅ vless reality (xtls-rprx-vision + reality-opts, via the native connector)
    • ✅ vmess (AEAD alterId=0, tcp / ws, AES-128-GCM)
    • ✅ hysteria2 (QUIC, via the native connector)
    • ❌ tuic (QUIC variant, not implemented)
  • One port, two protocols — HTTP CONNECT + SOCKS5 on a single loopback port
  • Harness-only scope:
    • Listens on 127.0.0.1, no system proxy, no TUN
    • DSH subprocesses (pwsh/terminal, jobs, workflows) inherit the proxy via env vars
    • DSH's own fetch (web search, LLM, MCP) is routed through a runtime dispatcher
    • Loopback always bypasses (NO_PROXY) — no proxy loops
  • Native Web GUI — Settings → Clash Proxy: status, enable/restart, subscription update, node list, per-node latency tests, group selection, live traffic
  • Node selection — url-test (auto-fastest) / select (manual, persisted) / fallback
  • Auto subscription refresh — configurable interval in hours, 0 disables

Install

dsh plugin --profile web add dsh-clash-proxy
# or from a local path / git repo:
dsh plugin --profile web add <path/to/dsh-clash-proxy>

Restart DSH (dsh web), open Settings → Clash Proxy, and fill in your subscription URL. Nothing else is needed.

Configuration

The Clash Proxy settings card (or a profile patch overlay):

FieldDefaultMeaning
enabledtrueMaster switch; nothing listens or is injected when false
subscriptionUrlemptyClash subscription URL; CLASH_SUBSCRIPTION_URL env var also works
fetchProxyUrlemptyOptional upstream proxy for fetching the subscription itself
autoUpdateHours24Subscription refresh interval in hours, 0 disables
groupTypeurl-testAuto group type: url-test / select / fallback
latencyTestUrlgstatic 204Node health-check / latency-test URL
latencyTimeoutMs3000Per-node latency test timeout
noProxyloopbackExtra NO_PROXY entries (loopback is always forced)
extraRules[]Extra rule lines, e.g. DOMAIN-SUFFIX,example.com,DIRECT
excludeRules[]Subscription rules to drop (substring match)

Data directory: $DSH_HOME/clash-proxy/ (subscription cache, selection state). Routing data ships inside the package (lib/core/data/*.json.gz) and works offline; rebuild it with npm run build:cn-data.

How it works

DSH process tree
 ├─ DSH's own fetch ──(runtime dispatcher)─┐
 ├─ pwsh / terminal / jobs ──(env vars)────┤
 └─ workflow / subagents ───(inherited)────┘
                                           ▼
                        rule proxy (127.0.0.1:random port)
                          ├─ domestic domains/IPs → direct (fast)
                          └─ foreign → subscription node (ss/trojan/vless/vmess/hysteria2/socks5/http)
Other system programs ── unaffected (no system proxy / TUN)
  • Every connection is decided per-target: direct / proxy / reject
  • The GUI talks to the manager through the DSH webserver's /clash-proxy/* JSON API
  • Disabling/uninstalling restores env vars and the fetch dispatcher — no leftovers
  • Per-process random ports; multiple DSH instances never collide

The plugin reuses these DSH capabilities (no reinvented wheels):

DSH capabilityHow it is reused
timer serviceSubscription auto-update + periodic full latency-test loop
webServer serviceRegisters the /clash-proxy/* prefix route for the browser's JSON API
Settings system (dsh-settings)installSettingsSection mounts an editable settings card shared with the browser
Client slots / locale / settingsScopeMounts the management panel into Settings; registers EN/ZH dictionaries
Runtime fetch dispatcherInjects a dispatcher so DSH's own fetch (search/LLM/MCP) goes through the proxy
Environment injectionSpawned subprocesses (pwsh/jobs/workflow) inherit HTTP(S)_PROXY

Usage & verification

Usage example (run inside DSH):

curl -x http://127.0.0.1:<proxy-port> https://ipinfo.io   # see the foreign exit IP
curl https://www.baidu.com                                # domestic direct, instant

Verification status (layered):

  • ✅ Verified:
    • Rule engine / subscription parsing / SS AEAD (test/smoke.mjs)
    • vmess(ws), trojan(ws+tls), vless(ws) end-to-end (local xray oracle)
    • hysteria2 / vless-reality manually verified against real nodes (script not published to avoid leaking credentials)
    • Real splitting + socks5/ss nodes via curl (test/proxy-e2e.mjs)
  • ⏳ To verify (recommended before publish):
    • Fresh-profile install smoke test (dsh plugin add then first boot)
    • npm pack --dry-run package completeness (confirm lib/native/connector.exe and cordis.patch.yml are included)
    • Multi-instance random ports never collide

Development & tests

npm install
npm run build:cn-data              # regenerate CN routing data (needs internet)
node test/smoke.mjs                # rule engine / subscription / SS AEAD unit tests
node test/vmess-e2e.mjs            # vmess(ws) end-to-end (local xray server)
node test/trojan-ws-echo.mjs       # trojan(ws+tls) end-to-end (local xray server)
node test/vless-ws-echo.mjs        # vless(ws) end-to-end (local xray server)
node test/proxy-e2e.mjs            # end-to-end: real splitting + socks5/ss nodes via curl

The E2E tests ship minimal socks5/ss protocol fixtures; the vmess/trojan/vless tests need .clash-test/xray/xray.exe (a local oracle server). Set TEST_UPSTREAM_PROXY=http://127.0.0.1:7890 to let the fixture path reach the international internet through any HTTP proxy (test-only convenience).

Native connector

hysteria2 (QUIC) and vless reality (uTLS fingerprint) cannot be implemented in pure JavaScript, so the plugin ships a self-compiled Go native connector lib/native/connector.exe (source in native/, rebuild with go build -o ../lib/native/connector.exe .). Node bridges to it over stdio. It only does "dial + bidirectional relay" for those two protocols; the rule engine, subscription parsing, and node selection stay on the pure-JS side, with no dependency on any external Clash/mihomo binary.

FAQ

  • "No subscription" — fill subscriptionUrl (or set CLASH_SUBSCRIPTION_URL) and click "Update subscription".
  • Subscription update fails — the subscription may itself need a proxy; set fetchProxyUrl.
  • Nodes won't connect — check the node type in the GUI; ss / trojan / vless / vmess / hysteria2 / socks5 / http are supported, tuic is not.
  • Verify splitting — inside DSH run curl -x http://127.0.0.1:<port> ipinfo.io to see your exit IP; Baidu should feel instant.
  • Coexists with existing Clash clients — fully independent, random ports.

Known limitations

LimitationCauseMitigation
hysteria2 / vless-reality depend on a bundled Go connector (Windows amd64 binary)QUIC / uTLS fingerprinting cannot be implemented in pure JSOn other platforms/arches run go build -o ../lib/native/connector.exe . from native/
tuic not supportedAnother QUIC variant, not implementedPick ss/trojan/vless/vmess/hysteria2/socks5/http nodes in the GUI
Some nodes have unstable egress to google / wikipedia / x.com (observed timeouts)Depends on the subscription node's exit routeTest each node in the GUI and switch to a more stable one
Only affects the Harness process tree; no system proxyBy design (safety boundary)Use a separate system tool if you need system-wide proxying
Pure-JS transports have limited throughput at extreme concurrencynode:net / node:tls event-loop modelDomestic traffic is direct; use proxied egress on demand

Changelog

  • 0.2.0 — pure-JS transports for ss / trojan / vless(tcp/tls/ws) / vmess / socks5 / http; added hysteria2 and vless-reality (bundled Go native connector); Web GUI (status/subscription update/node list/latency tests/selection/traffic); rule engine + CN routing data + subscription parsing.

License & compliance

MIT. This plugin provides technical capability only; ensure your proxy service and usage comply with local laws and regulations.

相关插件

继续浏览 security-access 分类下经过校验的插件。

Doctor@linxin666/dsh-doctorDSH 配置档案的事务性救援模式,配备受监督的启动器、隔离的恢复容器、确定性修复、健康监控以及本地 Web 恢复控制台Pocketdsh-pocket把 DeepSeek Harness 装进你的口袋:一个包、一个设置页,手机扫码即同步访问电脑上的 DSH(局域网 + 公网,实时同屏)。DSCODE@toddzheng024/dscode-bundle完整的 DeepSeek 编码代理,支持持久化 shell、Ultra 协作和自动权限审查。Auto Reviewdsh-auto-review针对 DeepSeek Harness 审批请求的第二模型 AI 自动审查:只读审查子代理在审批应答链上决定允许或拒绝,并采用故障关闭回退机制和完整的会话日志审计。