AI Agent Hub
Back to plugins
🧰

dsh-wsl-fetch

Web Tools Updated 2026.09.15

Run the following command in DeepSeek Harness:

dsh plugin install 173787247/dsh-wsl-fetch

Paste the following prompt into your AI chat to install this plugin:

Run dsh plugin install 173787247/dsh-wsl-fetch in DeepSeek Harness to install it (source: https://github.com/173787247/dsh-wsl-fetch)

About this plugin

When dsh runs inside WSL, its built-in web_fetch resolves DNS on the Linux side and then connects directly to the target public IP, completely bypassing whatever HTTP proxy is already configured on the Windows host. DeepSeek API calls still work, yet fetching a Mattermost page or a documentation site throws TypeError: fetch failed. The companion plugin dsh-wsl-net only injects proxy environment variables into child bash or npm processes and cannot patch the in-process fetch path.

dsh-wsl-fetch registers a fetch provider called wsl-proxy. When HTTP_PROXY or HTTPS_PROXY is detected, the provider is selected automatically and routes the request through an undici ProxyAgent pointed at the Windows-side proxy. It also exposes tunable knobs—timeout, max redirects, retry count, retry delay, response body byte cap, decoded character cap, and User-Agent—so fetch behavior stays predictable. If the proxy variables are absent, the plugin remains registered but marked unavailable and the stock http provider continues as the fallback.

This plugin is aimed at users who run dsh in WSL 2 and rely on a Windows proxy such as Clash to reach external sites. It does not override Cloudflare WAF blocks (403 / 1010) and keeps private or localhost URLs blocked; those cases still need proxy rules or site-side cooperation.

Use Cases

  • web_fetch fails when connecting directly to public IPs inside WSL
  • Fetching external docs or Mattermost pages errors out under a Clash proxy
  • In-process fetch that dsh-wsl-net env injection cannot fix

Best For

  • Users running dsh in WSL 2 who need external web access
  • Environments relying on a Windows-side HTTP(S)_PROXY such as Clash
  • Developers hitting web_fetch TypeError: fetch failed errors