tunnel-doctor

Installation
SKILL.md

Tunnel Doctor

Diagnose and fix conflicts when Tailscale coexists with proxy/VPN tools on macOS, with specific guidance for SSH access to WSL instances.

Five Conflict Layers

Proxy/VPN tools on macOS create conflicts at five independent layers. Layers 1-3 affect Tailscale connectivity; Layer 4 affects SSH git operations; Layer 5 affects VM/container runtimes:

Layer What breaks What still works Root cause
1. Route table Everything (SSH, curl, browser) tailscale ping tun-excluded-routes adds en0 route overriding Tailscale utun
2. HTTP env vars curl, Python requests, Node.js fetch SSH, browser http_proxy set without NO_PROXY for Tailscale
3. System proxy (browser) Browser only (HTTP 503) SSH, curl (both with/without proxy) Browser uses VPN system proxy; DIRECT rule routes via Wi-Fi, not Tailscale utun
4. SSH ProxyCommand double tunnel git push/pull (intermittent) ssh -T (small data) connect -H creates HTTP CONNECT tunnel redundant with Shadowrocket TUN; landing proxy drops large/long-lived transfers
5. VM/Container proxy propagation docker pull, docker build Host curl, running containers VM runtime (OrbStack/Docker Desktop) auto-injects or caches proxy config; removing proxy makes it worse (VM traffic via TUN → TLS timeout)

Diagnostic Workflow

Step 1: Identify the Symptom

Related skills

More from daymade/claude-code-skills

Installs
240
GitHub Stars
1.0K
First Seen
Feb 7, 2026