Quick fix
# One-liner: probe first — if codeload is reachable, install directly from the tarball (measured 1.7~1.9s)
curl -sI https://codeload.github.com/obra/superpowers/tar.gz/refs/tags/v6.3.0
If the probe passes, follow step 2 of the step-by-step for the tarball install; or configure an explicit git proxy and retry.
What you will run into
In Claude Code, /plugin install superpowers@claude-plugins-official or @superpowers-marketplace fails with fatal: unable to access 'https://github.com/obra/superpowers.git/': Failed to connect to github.com port 443 after 2045 ms.
Even with a global proxy configured in the app it doesn't connect — without TUN, the git subprocess doesn't go through the proxy.
Why this happens
Upstream Claude Code plugin marketplace install path = git clone of a GitHub repo (the marketplace site offers no zip download); direct connections to github.com:443 from CN are unstable/blocked;
app-level proxies don't cover git subprocesses (unless TUN/transparent proxy or explicit git proxy config).
| Channel | Status (measured) |
|---|---|
| codeload tarball | ✅ Reachable, 1.7~1.9s |
| github.com:443 direct | ❌ Unstable/blocked |
| raw.githubusercontent.com | ❌ Timeout (not an install path; avoid) |
| gh-proxy acceleration | ✅ Measured working (7.8s) |
The install flow is essentially "a CLI program invoking a git subprocess": on /plugin install, the CLI itself runs git clone, and the download is done not by the CLI's network stack but by the git subprocess it forks.
App-level proxies (the proxy toggle in the app's settings) only affect the app's own network stack (the HTTP client's proxy);
the git subprocess is an independent program with its own config (http.proxy in ~/.gitconfig) — unless the proxy is TUN/transparent mode (capturing all system traffic), git never knows a proxy exists and still connects directly.
That's the mechanism behind "proxy enabled but still failing".
The three countermeasures map to three layers: give git an explicit proxy (git config --global http.proxy ..., making the subprocess use the proxy); switch channels (the codeload tarball is directly reachable;
use curl to fetch the archive — curl runs in the CLI's own context, so the app-level proxy applies);
gh-proxy acceleration (domain-level replacement of the content). The diagnostic path is fixed: first see "which stage is stuck" (clone = git subprocess direct connection), then pick the matching layer's countermeasure.
Step by step
1. Probe first, then pick the route — Diagnose
curl -sI https://codeload.github.com/obra/superpowers/tar.gz/refs/tags/v6.3.0
If codeload is reachable, go the tarball route (1.7~1.9s in this environment).
2. Tarball direct install (measured PASS) — Required
curl -sL https://codeload.github.com/obra/superpowers/tar.gz/refs/tags/v6.3.0 | tar xz
Measured: codeload tarball 544K / 2.1s → install PASS.
3. Configure an explicit git proxy and retry — Required
git config --global http.proxy http://127.0.0.1:<port>
Or enable TUN/transparent proxy.
4. Accelerated channel — Required
gh-proxy-style acceleration (measured working 2026-08-28, 7.8s), or download the zip from a CN mirror and install offline; if all else fails, wire it in via the local-path method (see the symptom-6 entry).
How to confirm it works
Install flow completes (measured shape):
curl probe codeload → HTTP 200
tarball extracted with complete plugin dir structure → install PASS Other environments
| Environment | Notes |
|---|---|
| App global proxy | Doesn't cover git subprocesses; ineffective without TUN (CSDN case) |
| Explicit git proxy | Retry after git config --global http.proxy |
| gh-proxy | Measured working, 7.8s |
| codeload | Measured stable: 544K / 2.1s |
| Offline fallback | Local-path method (see symptom-6 entry) |
Symptom
In Claude Code, /plugin install superpowers@claude-plugins-official or @superpowers-marketplace reports:
fatal: unable to access 'https://github.com/obra/superpowers.git/': Failed to connect to github.com port 443 after 2045 ms
A global proxy configured inside the app also does not work (without TUN, the git subprocess does not use the proxy).
Cause
The upstream Claude Code plugin marketplace install path = git clone of the GitHub repo (the marketplace site offers no zip download); domestic direct connection to github.com:443 is unstable/blocked; app-level proxy does not cover the git subprocess (unless TUN/transparent proxy or git is explicitly given a proxy).
Solution
- Probe before choosing a path:
curl -sI https://codeload.github.com/obra/superpowers/tar.gz/refs/tags/v6.3.0— if codeload is reachable, install from the tarball directly (command in the "verified in this marketplace" section; 1.7~1.9s in this environment). - Give git an explicit proxy and retry:
git config --global http.proxy http://127.0.0.1:<port>; or enable TUN/transparent proxy. - Use acceleration: gh-proxy-style acceleration (verified usable 2026-08-28, 7.8s), or download the zip from a domestic mirror and install offline (see Symptom 2).
- Offline fallback: wire it in via the local-path method from Symptom 6.
Verification Evidence
- Web case: CSDN m0_58528895/161265224 (2026-05) — full 443 case:
@claude-plugins-official/@superpowers-marketplaceboth failed, global proxy did not work, TUN untried. - Verified in this marketplace 2026-08-28: GitHub source download 200 / 1.91s (site docs; 2026-08-27 baseline 1.73s); raw.githubusercontent.com timed out (not an install path, avoided).
- Verified install in this marketplace: codeload tarball 544K / 2.1s -> PASS (local repro log).
Applicable tools (1)
This problem is linked from the tool pages below — reachable from either side.
superpowersSource & evidence
← Skills Management domain | Problem Catalog Experience | Facing another issue? Go to the Helpdesk