--- name: OmniRoute AI Gateway description: OmniRoute v3.6.5 на LXC 132 (10.0.0.179) — AI-шлюз для 60+ LLM провайдеров, порт 20128 type: project originSessionId: 9f26284f-db92-456f-813d-fd8210b7d7b6 --- ## OmniRoute v3.6.5 (LXC 132, 10.0.0.179) - **Путь**: /root/OmniRoute/, Node.js 22, Next.js 16.2, git repo (github.com/diegosouzapw/OmniRoute) - **Dashboard**: http://10.0.0.179:20128, пароль: 1qaz!QAZ - **API**: http://10.0.0.179:20128/v1 - **API Key**: sk-225e902dc95ff192-6bdad7-3ec8cdc6 - **SQLite DB**: /root/.omniroute/storage.sqlite - **Service**: omniroute.service (systemd, enabled), запускает **npx-кэш** (НЕ git repo) - **ExecStart**: `/usr/bin/node /root/.npm/_npx//node_modules/omniroute/app/server.js` (hash меняется при обновлении) - **Конфиг**: /root/OmniRoute/.env (секреты сгенерированы) ### SSH доступ к LXC 132 - **Прямой SSH (root@10.0.0.179) НЕ РАБОТАЕТ** — пароль 1qaz!QAZ не подходит, ключ claude-code отсутствует - **Доступ через Proxmox**: `sshpass -p '1qaz!QAZ' ssh root@10.0.0.250 "pct exec 132 -- bash -c 'COMMAND'"` — РАБОТАЕТ - **Hostname**: code-server ### Обновление OmniRoute (npx способ — используется сервисом) 1. Остановить: `pct exec 132 -- systemctl stop omniroute` 2. Удалить старый npx-кэш: `rm -rf /root/.npm/_npx/` 3. Установить: `npx omniroute@ --version` (создаст новый кэш) 4. Обновить путь в `/etc/systemd/system/omniroute.service` ExecStart на новый hash 5. `systemctl daemon-reload && systemctl start omniroute` ### Обновление git-репозитория (отдельно, для разработки) 1. `cd /root/OmniRoute && git pull origin main && npm install && npm run build` ### Подключённые провайдеры (2026-04-11) | Провайдер | Аккаунт | Модели | Статус | |-----------|---------|--------|--------| | Codex (OpenAI) | batlaew@gmail.com (free plan) | gpt-5.4, gpt-5.4-mini | Работает, refresh проблема | | Claude | OAuth | claude-opus-4-6, sonnet | Токен есть, refresh проблема | | Kiro (AWS) | OAuth | claude-sonnet-4.5, haiku | Токен есть, refresh проблема | ### Использование - Prefix модели: `cx/gpt-5.4` (Codex), `cc/claude-opus-4-6` (Claude) - 181 модель доступна через API (на 2026-04-14) - Codex OAuth: callback на localhost:1455 (нужен SSH-туннель для удалённого доступа) - Token refresh: требует периодическую перелогинку OAuth ### Важно - OAuth Codex привязан к localhost:1455 — для удалённого доступа: `ssh -L 20128:localhost:20128 -L 1455:localhost:1455 root@10.0.0.179` - Встроенные агенты: Droid и Assistant (Dashboard → Agents) - CLI tools конфиг: Dashboard → CLI Tools ### Sonnet 5 НЕДОСТУПЕН (2026-07-01) - **Sonnet 5 не отдаёт ни один провайдер, включая Max (`cc/`/`claude/`).** Запрос `claude-sonnet-5` НЕ падает с ошибкой, а **тихо деградирует до Sonnet 4.5** (модель сама себя называет «Sonnet 4.5»); `claude-sonnet-5-20250929` → 404. Не ставить sonnet-5 дефолтом — будешь думать что на 5, а по факту 4.5. - Потолок Sonnet = **4.6**, бесплатно только **4.5**. Рабочий 4.6 = `cc/claude-sonnet-4-6` / `claude/claude-sonnet-4-6` (Max-квота). `kr/kiro/kilocode`-варианты 4.6 в каталоге есть, но 400 Invalid / no credentials. - Из семейства Claude 5 через Max реально работают: **Opus 4.8**, **Fable 5** (`cc/claude-fable-5`). `kr/claude-fable-5` = 400 Invalid. - Грабля: битый запрос (напр. `cc/claude-sonnet-5-20250929`) вешает провайдер `cc/`/`claude/` в circuit-breaker («reset after N») на пару минут — задевает и валидные модели. Само отпускает. ### research-тул (mcp-omniroute на LXC 132) - Файлы: `/root/mcp-omniroute/server.js` (fallback `DEFAULT_MODEL`) + env в `/root/.claude.json` → `mcpServers.omniroute.env.DEFAULT_MODEL` (**действующее** значение, оверрайдит fallback). - **2026-07-01: дефолт research переключён `kr/claude-sonnet-4.5` → `cc/claude-sonnet-4-6`** (по выбору Олега — через Max). ВНИМАНИЕ: теперь research жрёт квоту Max (общий пул с Opus на исполнении), а не бесплатный Kiro. - `research_compare` оставлен на бесплатных `[kr/claude-sonnet-4.5, cx/gpt-5.4]`. - MCP — stdio, спавнится сессией Claude Code на LXC 132; новый дефолт подхватывается при следующем старте сессии, отдельного рестарта сервиса нет. Бэкапы: `~/.claude.json.bak.*`, `~/mcp-omniroute/server.js.bak.*`.