Внешний контроллер: управляем Clash по RESTful API
Строка external-controller: 127.0.0.1:9090 в конфиге открывает у ядра HTTP API — сам интерфейс Clash for Windows работает через него. Ваши скрипты тоже могут:
Шпаргалка по эндпоинтам
# все группы и узлы
curl http://127.0.0.1:9090/proxies
# переключить группу "Proxy Select" на узел "HK-01"
curl -X PUT http://127.0.0.1:9090/proxies/Proxy%20Select ^
-d "{\"name\": \"HK-01\"}"
# живой трафик (длинный поток)
curl http://127.0.0.1:9090/traffic
# разорвать все соединения
curl -X DELETE http://127.0.0.1:9090/connections
# тест задержки одного узла
curl "http://127.0.0.1:9090/proxies/HK-01/delay?timeout=3000&url=http://www.gstatic.com/generate_204"
О безопасности
Перевесили слушатель на 0.0.0.0:9090 (например, ради управления с телефона)? Обязательно задайте secret и передавайте Authorization: Bearer <secret> — иначе прокси перенастроит любой сосед по сети. Дружелюбная надстройка над тем же API — «Сторонние панели».