Общий пул подписочных аккаунтов через CLIProxyAPI
Структура материала
Зачем это нужно
Прокси-сервис поверх подписок решает две задачи.
Задача 1 — один аккаунт на несколько человек без бана. Вендор блокирует аккаунт, который работает с нескольких устройств и IP. Через прокси все запросы идут с одного сервера под одной авторизацией: для вендора это один клиент, а людей за ним сколько угодно, каждый со своим API-ключом.
Задача 2 — несколько аккаунтов как один. Лимиты подписок сгорают быстро. Пул отдаётся клиентам как один вход, а сервис сам переводит запросы на свежий аккаунт, когда у текущего кончилась квота.
Сервис аккумулирует OAuth-авторизации подписок (Claude, OpenAI, Gemini, Kimi, Grok) и API-ключи провайдеров вроде OpenRouter, принимает запросы по OpenAI-compatible API и нативным протоколам Anthropic и Gemini, отдаёт единый список моделей. Установка — в README, подробности — на help.router-for.me.
Что нужно знать до старта
Из Codex не получится использовать модели Anthropic, а из Claude Code — модели OpenAI, так как протоколы OpenAI и Anthropic различаются: прокси транслирует форматы, но tool-calling, thinking и кэширование работают по-разному, и перекрёстное использование нестабильно. Рабочая связка: Claude Code — модели Claude, Codex — модели OpenAI, остальной пул — из харнесов с открытым выбором провайдера.
Клиенты нужно переключить. Claude Code и Codex по умолчанию ходят к вендору под вашим логином. Чтобы запросы шли через пул, клиент переводится на адрес прокси — три фолда ниже.
Часть функций аккаунта теряется. Всё, что привязано к аккаунту вендора, через пул недоступно: шеринг артефактов, облачные сессии и задачи, синхронизация истории между устройствами. Авторизация живёт на сервере прокси; клиенту нужны только адрес и ключ.
Где поднимать
| Вариант | Для кого | Что даёт |
|---|---|---|
| Локально на рабочей машине | один человек, несколько подписок | балансировка между своими аккаунтами, host: 127.0.0.1 — наружу ничего не торчит |
| Отдельная машина с публичным доменом | команда, общий пул | ключ каждому участнику из панели; аккаунты авторизованы один раз; квоты и логи в одном месте |
Панель Management Center открывается по https://<домен>/management.html. В ней:
- Auth Files — добавление аккаунтов, OAuth-логин прямо из браузера;
- AI Providers — API-ключевые провайдеры (OpenRouter и другие);
- Config → api-keys — ключи участникам, по одному на человека или машину, чтобы доступ было легко отозвать.
Встроенной статистики использования в сервисе нет — для неё ставится отдельный дашборд, например cpa-usage-keeper.
Переключить клиентов
Три вида настройки: Claude Code, Codex и всё, что умеет OpenAI-compatible API.
Claude Code · CLI и десктопное приложение
Переменные окружения в ~/.claude/settings.json (общий файл CLI и десктопа):
{
"env": {
"ANTHROPIC_BASE_URL": "https://<домен>",
"ANTHROPIC_AUTH_TOKEN": "<ваш-ключ>",
"CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY": "1",
"API_TIMEOUT_MS": "600000"
}
}ANTHROPIC_AUTH_TOKEN— ключ из панели, заменяет логин в Anthropic на этой машине.CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY— список моделей берётся у прокси.- На одну сессию — те же переменные через
exportперед запускомclaude.
Если уже залогинены в Anthropic — /logout, иначе клиент может ходить напрямую. Выбирайте модели Claude (/model).
Откат — удалить блок env и выполнить /login.
Codex · CLI и десктопное приложение
Провайдер в ~/.codex/config.toml:
model = "gpt-5.6-sol"
model_provider = "cliproxyapi"
[model_providers.cliproxyapi]
name = "OpenAI"
base_url = "https://<домен>/v1"
wire_api = "responses"
requires_openai_auth = true
experimental_bearer_token = "<ваш-ключ>"experimental_bearer_token— ключ из панели; логин в ChatGPT иauth.jsonне нужны.- Имя модели — из списка прокси; выбирайте модели OpenAI.
Откат — убрать model_provider и выполнить codex login.
OpenAI-compatible харнесы · OpenCode, Pi, Hermes, OpenClaw и другие
Любой агент с настройкой «custom OpenAI endpoint»:
| Агент | Что это |
|---|---|
| OpenCode | открытый терминальный coding-агент, провайдеры через opencode.json |
| Pi | минималистичный coding-агент с расширяемыми инструментами |
| Hermes Agent | универсальный агент Nous Research с памятью и навыками |
| OpenClaw | персональный ассистент с каналами (Telegram, WhatsApp и др.) |
| Cline, Aider, Goose и подобные | IDE- и терминальные агенты с полем «OpenAI-compatible base URL» |
Подключение — два параметра:
export OPENAI_BASE_URL="https://<домен>/v1"
export OPENAI_API_KEY="<ваш-ключ>"Харнес сам запросит список моделей и покажет весь пул под алиасами. Здесь смешанный пул удобнее всего: такой харнес не привязан к протоколу одного вендора.
Пример для OpenCode — opencode.json в корне проекта или в ~/.config/opencode/:
{
"$schema": "https://opencode.ai/config.json",
"provider": {
"pool": {
"npm": "@ai-sdk/openai-compatible",
"name": "Team pool",
"options": {
"baseURL": "https://<домен>/v1",
"apiKey": "{env:POOL_API_KEY}"
},
"models": {
"claude-opus-5": { "name": "Claude Opus 5" },
"gpt-5.6-sol": { "name": "GPT 5.6" }
}
}
}
}Модель выбирается как pool/<имя> через /models; ключ — в переменной окружения, не в файле в репозитории.
Инструментам с отдельным полем «Anthropic endpoint» — https://<домен> и тот же ключ.
