OpenClaw — кроссплатформенный AI agent gateway для Discord, Google Chat, iMessage, Matrix, Microsoft Teams, Signal, Slack, Telegram, WhatsApp, Zalo и других платформ. На этой странице показано, как подключить BetterToken к OpenClaw и выполнить базовую проверку.
Установка OpenClaw
curl -fsSL https://openclaw.ai/install.sh | bash
iwr -useb https://openclaw.ai/install.ps1 | iex
Установка и подключение
Можно запустить автоматический скрипт BetterToken. Подготовьте API Key BetterToken до начала. Скрипту нужен Node.js. Если API Key или модель не переданы явно, скрипт запросит их интерактивно, когда это поддерживается. После завершения скрипта перейдите к разделу «Как применить» ниже.Выберите шаг для своей ОС. Нужен только один вариант.macOS / Linux
curl -fsSL https://www.bettertoken.ai/install-openclaw-provider.sh | bash
Windows
iwr https://www.bettertoken.ai/install-openclaw-provider.ps1 -OutFile "$env:TEMP\install-openclaw-provider.ps1"; powershell -ExecutionPolicy Bypass -File "$env:TEMP\install-openclaw-provider.ps1"
Этот путь поддерживается в инструкции CC Switch.Перейдите сразу к вкладке OpenClaw в инструкции CC Switch.После настройки в CC Switch вернитесь на эту страницу, чтобы проверить startup, verification и activation notes. Очистите конфликтующие переменные окружения
unset ANTHROPIC_AUTH_TOKEN
unset ANTHROPIC_BASE_URL
unset OPENAI_API_KEY
unset OPENAI_BASE_URL
Запустите onboarding
openclaw onboard --install-daemon
Добавьте credential BetterToken через auth flow
Добавьте или проверьте provider BetterToken
В wizard или provider editor заполните или проверьте:
- Base URL:
https://www.bettertoken.ai/v1
- API:
openai-responses
- API Key: ваш API Key BetterToken
- Model: актуальный model ID из model plaza (
https://www.bettertoken.ai/pricing)
Минимальный provider config snippet выглядит так:{
"models": {
"mode": "merge",
"providers": {
"bettertoken": {
"baseUrl": "https://www.bettertoken.ai/v1",
"apiKey": "YOUR_BETTERTOKEN_API_KEY",
"api": "openai-responses",
"models": [
{
"id": "YOUR_CODEX_MODEL_ID",
"name": "YOUR_CODEX_MODEL_ID"
}
]
}
}
}
}
Extra `headers` обычно не нужны
При подключении BetterToken обычно не нужен дополнительный User-Agent.Добавляйте headers только если вы также используете custom gateway, tenant routing или другой upstream service, который явно требует их.
Задайте default model и проверьте
Выполните openclaw models list, чтобы проверить provider id, затем задайте default model и проверьте status:openclaw models list
openclaw models set <provider>/<Codex model ID copied from https://www.bettertoken.ai/pricing>
openclaw gateway restart
openclaw models status
После записи config перейдите к разделу «Как применить» ниже, чтобы перезапустить gateway и проверить сессию.
Примечания для multi-agent setups и существующих сессий
Effective model priority в OpenClaw обычно такой:
session override > agents.list[*].model > agents.defaults.model.primary
Это значит:
- Если agent явно задает
model в agents.list, он не наследует global default model.
- Если BetterToken установлен как global default model, но
main все еще закрепляет старую модель, Discord DM flows, использующие main, продолжат использовать старую модель.
- Если в предыдущей session остались
providerOverride, modelOverride или authProfileOverride, текущая session может продолжать использовать старый route даже после обновления default model.
Рекомендуемый workflow:
- Если вы хотите, чтобы
main следовал global default, не задавайте отдельный model для main или измените его на BetterToken.
- Выполните
openclaw gateway restart после изменения config.
- Выполните
/new в Discord, чтобы начать fresh session.
- Используйте
/status и /model, чтобы проверить active model.
Минимальный пример config
Используйте provider id, который показывает openclaw models list. В примере ниже используется bettertoken/gpt-5.4; замените его, если provider id отличается.
{
"agents": {
"defaults": {
"model": {
"primary": "bettertoken/gpt-5.4",
"fallbacks": []
},
"models": {
"bettertoken/gpt-5.4": {
"alias": "bettertoken"
}
}
},
"list": [
{
"id": "main"
},
{
"id": "fitness-coach"
},
{
"id": "trade-recorder",
"model": {
"primary": "bettertoken/gpt-5.4",
"fallbacks": []
}
}
]
}
}
main не задает model, поэтому наследует global BetterToken default.
trade-recorder задает model, поэтому не следует последующим изменениям global default.
Как применить
Если /model работает нестабильно, hot reload непоследователен или model picker странно ведет себя в старом OpenClaw build, обновитесь до последней версии перед глубокой диагностикой.
Сначала проверьте config layer
Выполните:openclaw models list
openclaw models status
Убедитесь, что provider BetterToken существует, а default model указывает на BetterToken. Начните новую session
Выполните /new в Discord.
Проверьте модель текущей session
Выполните /status в Discord и убедитесь, что current agent и current session используют BetterToken.
При необходимости проверьте available model picker
Выполните /model в Discord.Если BetterToken там не появляется, проверьте:
- указана ли текущая модель в
agents.defaults.models
- есть ли у provider model читаемое display name и, при необходимости,
alias в agents.defaults.models
- выполняли ли вы
openclaw gateway restart
- выполняли ли вы
/new
Быстрая диагностика
- Если вы изменили default model, но runtime все еще использует старую, сначала проверьте
agents.list.main.model
- Если BetterToken не появляется в
/model, проверьте, указан ли он в agents.defaults.models
- Если Discord все еще показывает старый route после изменения config, выполните
openclaw gateway restart, затем /new
- Если model picker или hot reload все еще выглядят устаревшими, сначала обновите OpenClaw и протестируйте снова
Запасной вариант: пусть Codex настроит это за вас
Если вы не хотите редактировать конфигурацию вручную, задайте API Key как переменную окружения и запустите Codex:
export BETTERTOKEN_API_KEY="YOUR_API_KEY"
codex
Затем отправьте Codex такой запрос:
Проверь и исправь мою локальную настройку OpenClaw для BetterToken.
Требования:
1. Сначала прочитай текущую конфигурацию OpenClaw и определи provider id, модель по умолчанию и агентов в `agents.list`, у которых явно задано поле `model`.
2. Если provider BetterToken отсутствует, добавь provider с Base URL `https://www.bettertoken.ai/v1` и `api: "openai-responses"`.
3. Используй уже сохраненные в OpenClaw credentials. Добавляй extra headers только если текущая версия OpenClaw или upstream gateway явно требует их; не считай `User-Agent` обязательным для BetterToken.
4. Переключи модель по умолчанию на BetterToken и проверь, не закреплена ли у `main` старая модель. Если я хочу, чтобы `main` следовал global default, убери явное поле `model` у `main`.
5. Убедись, что активная модель BetterToken есть в `agents.defaults.models`, и добавь для нее понятный `alias`.
6. Сделай backup исходного config, подготовь минимальный diff и перед изменением скажи, какие поля собираешься менять.
7. После изменения выполни `openclaw gateway restart` и напомни мне проверить результат через `/new`, `/status` и `/model` в Discord.
Ограничения:
- Если нужен API Key, читай его из переменной окружения `BETTERTOKEN_API_KEY` и не выводи секрет в чат или логи.
- Если в текущей конфигурации еще нет модели BetterToken, попроси у меня model ID из Codex group в BetterToken model plaza.