TeamoRouter в GitHub Copilot Chat для VS Code: Custom Endpoint со своим ключом
GitHub Copilot Chat в VS Code поддерживает собственный ключ (Bring Your Own Key, BYOK): добавьте Custom Endpoint с API-ключом и адресом TeamoRouter, и Claude, GPT и другие модели появятся в чате и режиме агента. Custom Endpoint работает с тремя типами API — Chat Completions, Responses и Anthropic Messages, — и TeamoRouter поддерживает все три.
У нового аккаунта баланс $0 — пополните его до первого запроса. Пополнить можно от $5. Если запрос возвращает 402 с текстом «wallet balance is insufficient», значит, баланс пуст, а адрес и ключ настроены правильно. Пополните баланс и повторите запрос.
1. Подготовка
- Обновите VS Code до актуальной версии. Custom Endpoint заменил старый провайдер «OpenAI Compatible» и настройку
github.copilot.chat.customOAIModels. - Создайте API-ключ в панели TeamoRouter.
- В локальных сессиях (Local) модели со своим ключом работают без входа в GitHub и без подписки Copilot. В Copilot Business или Enterprise администратор мог отключить BYOK на GitHub — проверьте это заранее.
2. Добавьте Custom Endpoint
- В панели чата откройте выбор модели и нажмите шестерёнку (Manage Language Models) или выполните
Chat: Manage Language Modelsв палитре команд. - Нажмите Add Models и выберите Custom Endpoint.
- В поле имени группы введите
TeamoRouter(под этим названием модели сгруппированы в списке). - Отображаемое имя — любое, в поле API-ключа вставьте ключ TeamoRouter.
- Тип API выберите Messages (для моделей Claude). Для отдельных моделей его можно поменять, см. ниже.
- VS Code откроет
chatLanguageModels.json. Оставьте сгенерированную строкуapiKey, заменитеmodelsна следующее и сохраните:
[
{
"name": "TeamoRouter",
"vendor": "customendpoint",
"apiKey": "(оставьте строку, которую создал VS Code)",
"apiType": "messages",
"models": [
{
"id": "claude-sonnet-5-5",
"name": "Claude Sonnet 5.5 · TeamoRouter",
"url": "https://api.teamorouter.com/v1/messages",
"apiType": "messages",
"toolCalling": true,
"vision": true,
"contextWindow": 1000000,
"maxOutputTokens": 32000
},
{
"id": "claude-opus-5-5",
"name": "Claude Opus 5.5 · TeamoRouter",
"url": "https://api.teamorouter.com/v1/messages",
"apiType": "messages",
"toolCalling": true,
"vision": true,
"contextWindow": 1000000,
"maxOutputTokens": 32000
},
{
"id": "gpt-6.1-sol",
"name": "GPT-6.1 Sol · TeamoRouter",
"url": "https://api.teamorouter.com/v1/responses",
"apiType": "responses",
"statefulResponses": false,
"toolCalling": true,
"vision": true,
"contextWindow": 1000000,
"maxOutputTokens": 32000
}
]
}
]
- Вернитесь в чат и выберите модель из группы TeamoRouter. Если её нет в списке, перезапустите VS Code.
3. Какой тип API выбрать
| Модели | apiType |
url |
|---|---|---|
| Claude | messages |
https://api.teamorouter.com/v1/messages |
| GPT | responses (и "statefulResponses": false) |
https://api.teamorouter.com/v1/responses |
| Другие OpenAI-совместимые модели | chat-completions |
https://api.teamorouter.com/v1/chat/completions |
- Указывайте полный адрес эндпоинта (с
/messages,/responsesили/chat/completions) — VS Code использует его как есть. - Для Responses API добавьте
"statefulResponses": false. По умолчанию VS Code отправляет только новые сообщения и опирается наprevious_response_id; с этой настройкой каждый раз уходит вся переписка, и не бывает ошибок о пропавших вызовах инструментов. - Чтобы добавить другую модель, скопируйте блок и поменяйте
idиname. ID моделей — в каталоге моделей. В режиме агента показываются только модели сtoolCalling: true.
Частые проблемы
- Автодополнение (Tab) всё равно требует GitHub: свой ключ работает для чата и мелких фоновых задач вроде генерации заголовков. Встроенные подсказки в коде, семантический поиск и похожие функции по-прежнему требуют аккаунт GitHub.
- Модели нет в списке: проверьте, что
chatLanguageModels.jsonсохранён и это корректный JSON, затем перезапустите VS Code. - Запросы возвращают 401: ключ указан неверно или удалён. Откройте группу в Language Models и вставьте ключ заново.
- Вы используете расширение Codex от OpenAI, а не Copilot: оно читает
~/.codex/config.toml. Настройте его по инструкции для Codex CLI.