Overview
dsh-wsl-net
README / EN
Package documentation
dsh-wsl-net
Install set: part of dsh-wsl-kit. Prefer
KIT_SET=daily|llm|github|full(see kit README). Fault tree: TROUBLESHOOTING.md.
DeepSeek Harness tool plugin: net_doctor diagnoses why HTTPS works in the Windows browser but fails from the WSL agent—and returns copy-paste fix scripts.
Pairs with dsh-wsl-env. Part of dsh-wsl-kit.
Why
Clash / V2Ray often runs on Windows with HTTP_PROXY=http://127.0.0.1:…. Node 24 fetch ignores proxy env vars unless NODE_USE_ENV_PROXY=1. The browser can look fine while the agent cannot reach DeepSeek or npm.
What it does
- Reports
HTTP_PROXY/HTTPS_PROXY/ALL_PROXY/NO_PROXY(userinfo redacted),NODE_USE_ENV_PROXY, optional npm registry - Also inspects the running
dsh webprocess env (dshWeb) so you can tell tool-process vs host-process proxy flags apart - TCP-probes the configured proxy port (
proxyListen) - Probes DeepSeek API and the npm registry (HTTP status < 500 counts as reachable, including 401)
- Returns
adviceplusfix.steps/fix.scripts(reuses current proxy when set; otherwise a127.0.0.1:7890template you must edit) - Optionally injects
NODE_USE_ENV_PROXY=1and lowercasehttp_proxyaliases into bash/npm child processes (injectChildProxy)
Does not print API keys, change Clash ports, or invent a proxy URL when none is configured.
Install
dsh plugin --profile web add github:173787247/dsh-wsl-net
Restart dsh web. In a new session, Tools should list net_doctor. Example ask: “Check whether DeepSeek API and npm are reachable.”
Child injection check:
node -e "console.log(process.env.NODE_USE_ENV_PROXY, process.env.http_proxy || process.env.HTTP_PROXY)"
Expect 1 and your proxy URL when a child bash/npm is wrapped.
Tool parameters
| Arg | Values | Meaning |
|---|---|---|
target |
all (default), env, deepseek, npm |
What to check |
Config
- id: dsh-wsl-net
name: dsh-wsl-net
config:
timeoutMs: 20000
probeTimeoutMs: 5000
injectChildProxy: true
| Key | Default | Meaning |
|---|---|---|
timeoutMs |
20000 |
Tool timeout |
probeTimeoutMs |
5000 |
Per-probe timeout |
injectChildProxy |
true |
Wrap subprocess.spawn / spawnTerminal |
Changelog (short)
- 0.3.0 —
fixcopy-paste scripts - 0.2.x — child proxy injection; redact proxy userinfo;
ALL_PROXY
Test
npm test
License
MIT
