ابزارهای CLI پروکسی سیستم ویندوز را نمی‌خوانند - ریشه «مرورگر وصل است، ترمینال نه» همین است. روش‌های استاندارد عبورشان از Clash در ادامه؛ همین فرمان‌ها بهترین ابزار تشخیص هم هستند.

curl: سریع‌ترین بررسی مسیر

# بدون پروکسی - خروجی محلی شما
curl https://api.ip.sb/ip
# از کلش - خروجی نود
curl -x http://127.0.0.1:7890 https://api.ip.sb/ip
# نسخه SOCKS5 (پورت ترکیبی هر دو را می‌فهمد)
curl --socks5 127.0.0.1:7890 https://api.ip.sb/ip

دو IP متفاوت یعنی مسیر برقرار است. با -v دست‌دادن را ببینید و نقطه شکست را بیابید.

متغیرهای محیطی: در سطح نشست

بیشتر ابزارها (curl، wget، pip، go و…) به http_proxy/https_proxy احترام می‌گذارند:

# PowerShell
$env:http_proxy = "http://127.0.0.1:7890"
$env:https_proxy = "http://127.0.0.1:7890"

# CMD
set http_proxy=http://127.0.0.1:7890
set https_proxy=http://127.0.0.1:7890

فقط در پنجره فعلی ترمینال معتبر است و با بستنش می‌رود - معمولاً همین را می‌خواهید. متغیر سیستمی هم می‌شود ولی توصیه نمی‌کنیم: فراموش می‌شود و با خاموش بودن Clash همه ترمینال‌ها بی‌شبکه می‌مانند.

تنظیم اختصاصی ابزارها

# Git
git config --global http.proxy http://127.0.0.1:7890
git config --global https.proxy http://127.0.0.1:7890
# لغو:
git config --global --unset http.proxy

# npm
npm config set proxy http://127.0.0.1:7890
npm config set https-proxy http://127.0.0.1:7890

# SSH از پروکسی ([email protected]، در ~/.ssh/config)
Host github.com
  ProxyCommand connect -S 127.0.0.1:7890 %h %p
نکته: از تنظیم تک‌تک خسته شدید؟ حالت TUN همه چیز را در لایه شبکه می‌گیرد - بی‌نیاز از هر متغیری. برتری روش متغیرها: دقت و بی‌نیازی از دسترسی مدیر.