OpenClaw 🦞 + GonkaGate: пошаговая интеграция
Настройте GonkaGate как custom OpenAI-совместимый провайдер в OpenClaw и проверьте маршрутизацию через рабочий allowlist моделей.
Нужен полный хаб документации? Откройте обзор Docs для быстрого старта и API Reference.
Зачем использовать custom provider в OpenClaw?
Custom provider позволяет сохранить привычные сценарии OpenClaw и отправлять запросы через GonkaGate. Вы получаете OpenAI-совместимость и явный контроль доступа к моделям через allowlist.
Что понадобится
Перед настройкой подготовьте:
- Установленный и запущенный OpenClaw (доступна CLI-команда openclaw).
- API-ключ GonkaGate из dashboard.
- Доступ к chat-командам OpenClaw и терминалу.
- Возможность редактировать JSON-конфиг (~/.openclaw/openclaw.json).
Быстрый способ: попросить OpenClaw настроить всё сам
Если вы уже работаете через чат OpenClaw, можно попросить его добавить provider и allowlist автоматически.
Вставьте этот промпт в чат OpenClaw и подставьте свой API-ключ:
Add GonkaGate as a custom provider to my OpenClaw config. Use these details:
- Provider name: gonkagate
- Base URL: https://api.gonkagate.com/v1
- API key: [PASTE YOUR GONKAGATE API KEY HERE]
- API type: openai-completions
Add this model:
- qwen/qwen3-235b-a22b-instruct-2507-fp8
Create alias "qwen3-235b", allowlist it in agents.defaults.models, apply the config, and restart the gateway if needed.Что должно произойти
CLI onboarding (быстрый путь)
Для локальной настройки используйте интерактивный onboarding, для CI/скриптов — non-interactive режим.
# Recommended for first setup
openclaw onboardБыстрая проверка после onboarding
Проверьте, что OpenClaw видит список моделей и корректно резолвит модель GonkaGate.
# CLI verification
openclaw models list
openclaw models status
# In OpenClaw chat
/models
/model qwen3-235b
/statusШаг 1: найдите конфиг OpenClaw
Определения provider и правила allowlist находятся в конфигурационном файле OpenClaw.
cat ~/.openclaw/openclaw.jsonLegacy путь
Шаг 2: добавьте GonkaGate как provider
Добавьте запись в models.providers и опишите метаданные поддерживаемой модели GonkaGate.
{
"env": {
"GONKAGATE_API_KEY": "gp-..."
},
"models": {
"mode": "merge",
"providers": {
"gonkagate": {
"baseUrl": "https://api.gonkagate.com/v1",
"apiKey": "${GONKAGATE_API_KEY}",
"api": "openai-completions",
"models": [
{
"id": "qwen/qwen3-235b-a22b-instruct-2507-fp8",
"name": "qwen/qwen3-235b-a22b-instruct-2507-fp8",
"reasoning": false,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 8192
}
]
}
}
}
}Режим совместимости
- Укажите api: "openai-completions".
- Укажите baseUrl: https://api.gonkagate.com/v1.
- Используйте точный model ID: qwen/qwen3-235b-a22b-instruct-2507-fp8.
- Поля cost — это локальные метаданные OpenClaw для трекинга.
Шаг 3: добавьте fully-qualified модель в allowlist
Одного provider недостаточно. Добавьте модель в agents.defaults.models с fully-qualified ключом и alias.
{
"agents": {
"defaults": {
"models": {
"gonkagate/qwen/qwen3-235b-a22b-instruct-2507-fp8": {
"alias": "qwen3-235b"
}
}
}
}
}Самая частая ошибка
Шаг 4: примените конфиг
Примените изменённый файл, чтобы OpenClaw перезагрузил provider и allowlist настройки.
# Apply config after edits
openclaw gateway config.apply --file ~/.openclaw/openclaw.json
# If your OpenClaw build doesn't support config.apply yet
openclaw gateway restartСовместимость команд
Полный пример конфигурации GonkaGate
Этот пример включает provider config, метаданные модели, alias в allowlist и primary model по умолчанию.
{
"env": {
"GONKAGATE_API_KEY": "gp-..."
},
"models": {
"mode": "merge",
"providers": {
"gonkagate": {
"baseUrl": "https://api.gonkagate.com/v1",
"apiKey": "${GONKAGATE_API_KEY}",
"api": "openai-completions",
"models": [
{
"id": "qwen/qwen3-235b-a22b-instruct-2507-fp8",
"name": "qwen/qwen3-235b-a22b-instruct-2507-fp8",
"reasoning": false,
"input": ["text"],
"cost": {
"input": 0,
"output": 0,
"cacheRead": 0,
"cacheWrite": 0
},
"contextWindow": 262144,
"maxTokens": 8192
}
]
}
}
},
"agents": {
"defaults": {
"models": {
"gonkagate/qwen/qwen3-235b-a22b-instruct-2507-fp8": {
"alias": "qwen3-235b"
}
},
"model": {
"primary": "gonkagate/qwen/qwen3-235b-a22b-instruct-2507-fp8"
}
}
}
}Чеклист проверки
После применения конфига проверьте и CLI, и chat-уровень выбора модели.
# CLI verification
openclaw models list
openclaw models status
# In OpenClaw chat
/models
/model qwen3-235b
/status- Выполните /models и убедитесь, что появился alias qwen3-235b.
- Переключите модель командой /model qwen3-235b и проверьте /status.
- Отправьте тестовый запрос и убедитесь, что ответ идёт через GonkaGate.
Частые ошибки
"model not allowed"
Модель отсутствует в allowlist agents.defaults.models или ключ записан в неверном формате.
- Используйте fully-qualified ключ: gonkagate/qwen/qwen3-235b-a22b-instruct-2507-fp8.
- Alias храните отдельно (например, qwen3-235b).
- После правок JSON заново примените конфиг.
Модель не появляется в /models
Обычно отсутствует одна из частей: определение модели у provider или запись allowlist.
- Проверьте, что в models.providers.gonkagate.models[] есть нужный model ID.
- Проверьте, что в agents.defaults.models есть matching fully-qualified key.
- Повторно выполните config apply/restart и снова проверьте /models.
Вызывается не та модель
Поле id в provider-конфиге должно точно совпадать с model ID, который ожидает GonkaGate.
- Установите id строго как qwen/qwen3-235b-a22b-instruct-2507-fp8.
- Не используйте сокращённые или переименованные ID в provider model definition.
- Alias используйте только в allowlist, а не в id поля модели.
Ошибки подключения или авторизации
Сначала проверьте endpoint и ключ напрямую в GonkaGate, а уже потом отлаживайте OpenClaw.
curl https://api.gonkagate.com/v1/chat/completions \
-H "Authorization: Bearer gp-your-api-key" \
-H "Content-Type: application/json" \
-d '{
"model": "qwen/qwen3-235b-a22b-instruct-2507-fp8",
"messages": [{"role": "user", "content": "hello"}]
}'- Проверьте baseUrl и формат ключа (gp-...).
- Запустите прямой curl-запрос, чтобы изолировать проблему credentials/endpoint.
Ошибки JSON parse/apply
Если JSON некорректный, конфиг не применится.
- Проверьте JSON синтаксис (запятые, кавычки, скобки) перед apply.
- При необходимости попросите OpenClaw исправить синтаксис JSON-конфига.
Как работает маршрутизация запроса
Перед отправкой запроса OpenClaw резолвит alias и provider во внутренний маршрут.
- Вы выбираете alias qwen3-235b.
- OpenClaw резолвит alias в allowlist key gonkagate/qwen/qwen3-235b-a22b-instruct-2507-fp8.
- Сегмент provider gonkagate маппится на models.providers.gonkagate.
- Запрос отправляется на https://api.gonkagate.com/v1/chat/completions.
- В request body поле model остаётся qwen/qwen3-235b-a22b-instruct-2507-fp8.
Alias selected: qwen3-235b
-> resolved allowlist key: gonkagate/qwen/qwen3-235b-a22b-instruct-2507-fp8
-> provider resolved: gonkagate
-> request target: https://api.gonkagate.com/v1/chat/completions
-> request model field: qwen/qwen3-235b-a22b-instruct-2507-fp8Fully-qualified имя используется только внутри OpenClaw для роутинга; GonkaGate получает provider model id в теле запроса.
Ресурсы
- Документация OpenClaw
- Справка по команде openclaw onboard
- Справка OpenClaw по model providers
- Репозиторий OpenClaw на GitHub
- Исходный гайд, на основе которого адаптирован этот материал
Следующие шаги
Перед продовым запуском пройдитесь по связанным страницам: