elevenmoon999/dsh-clash-proxy0

dsh-clash-proxy

Self-contained rule-splitting proxy plugin for DeepSeek Harness: subscription-based routing (domestic direct / international via ss/trojan/vless/vmess/hysteria2/socks5/http nodes) confined to the harness process tree, with a native Web GUI management page — no external Clash/mihomo dependency

包名
dsh-clash-proxy
版本
0.2.0
许可证
MIT
最近更新
2026年8月25日

安装

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:elevenmoon999/dsh-clash-proxy

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.

Usage & verification

Usage example (run inside DSH):

curl -x http://127.0.0.1:
 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