Windows 機器 Claude Code plugin 從 GitHub 安裝排錯 SOP
來源:2026-05-27 安裝 Webwright plugin 過程的踩坑紀錄。 適用情境:Windows 機器透過
/plugin install <name>@<marketplace>安裝 plugin,plugin 來源為 GitHub repo,結果報 SSH 相關錯誤。
兩道牆(常見故障鏈)
/plugin install xxx@yyy
│
▼
[牆 1] SSH host key verification failed
│ 原因:~/.ssh/known_hosts 沒有 github.com 的指紋
│ 但 Windows 舊 OpenSSH 不支援 sntrup761x25519-sha512 → ssh-keyscan 也拿不到
▼
[牆 2] Permission denied (publickey)
│ 原因:GitHub 沒設 SSH key,或本機沒對應私鑰
▼
解法:用 git insteadOf 把 SSH URL 改寫成 HTTPS,繞過 SSH 整段
解法 SOP(三步)
步驟 1:寫 GitHub host keys 到 known_hosts(若 ssh-keyscan 失敗,從官方 API 拿)
# 從 GitHub 官方 meta API 拿 host keys 並寫入
$keys = Invoke-RestMethod https://api.github.com/meta | Select-Object -ExpandProperty ssh_keys
$keys | ForEach-Object { "github.com $_" } | Add-Content $env:USERPROFILE\.ssh\known_hosts驗證 fingerprint(對照 GitHub 公告的 fingerprint):
- ED25519:
SHA256:+DiY3wvvV6TuJJhbpZisF/zLDA0zPMSvHdkr4UvCOqU - ECDSA:
SHA256:p2QAMXNIC1TJYWeIOttrVc98/R1BUFWu3/LiyKgUfQM - RSA:
SHA256:uNiVztksCsDhcc0u9e8BujQXVUpKZIDTMczCvj3tD2s
步驟 2:設定 git insteadOf(把 SSH URL 改寫成 HTTPS)
git config --global url."https://github.com/".insteadOf "git@github.com:"步驟 3:重試 plugin install
/plugin install <plugin-name>@<marketplace-name>
步驟 4:套用 plugin
/reload-plugins
副作用警告
git config insteadOf影響全域 — 所有 GitHub repo 操作都會走 HTTPS- 私有 repo push 需要 PAT token(不是密碼)
- 如要復原:
git config --global --unset url.https://github.com/.insteadof
根本原因(待解,不急)
Windows 舊 OpenSSH 不支援 GitHub 用的新 KEX 算法 sntrup761x25519-sha512,所以 ssh-keyscan 失敗。
根本解:升級到 Windows OpenSSH 9.x 或 PowerShell 7 內建版本。
應用記憶
- 2026-05-27 安裝 Webwright(Microsoft browser agent framework)實戰驗證
- 三次 install 才成功(牆 1 → 牆 2 → 過)
後續編譯方向
- 可編譯成「Windows 環境 Claude Code 安裝&排錯主檔」
- 涵蓋:plugin 安裝、SSH 排錯、PAT token 設定、known_hosts 維護
🔗 關聯
- 進展檔:2026-05-27_Webwright-plugin安裝
- 日記:2026-05-27