OneProvider
AI-клиенты и SDK

OpenClaw

Добавьте OneProvider в OpenClaw как кастомного провайдера anthropic-messages в конфиге. После перезапуска клиент сам добавит его в список моделей.

Добавьте OneProvider как кастомного провайдера anthropic-messages в конфиг OpenClaw. Клиент автоматически смержит провайдера в каталог моделей при перезапуске.

Все модели, характеристики и цены Индекс документации для AI-агентов: https://oneprovider.dev/docs/llms.txt Перед началом: ключ из кабинета Откройте кабинет: Telegram-бот @oneprovider_robot (Личный кабинет) или app.oneprovider.dev . Нажмите «Выпустить ключ», задайте имя (например, название этого клиента) и лимит трат, скопируйте ключ. Баланс пополняется там же. Подробнее о кабинете и ключах .

Настройка

Дефолтный путь конфига: ~/.config/openclaw/openclaw.json. Создайте файл, если его нет, вставьте сниппет ниже и перезапустите OpenClaw.

json
{
"models": {
"mode": "merge",
"providers": {
"oneprovider": {
"baseUrl": "https://api.oneprovider.dev",
"apiKey": "sk-your-key-here",
"api": "anthropic-messages",
"models": [
{
"id": "claude-fable-5",
"name": "Claude Fable 5",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 10,
"output": 50,
"cacheRead": 1,
"cacheWrite": 12.5
},
"contextWindow": 1000000
},
{
"id": "claude-haiku-4-5",
"name": "Claude Haiku 4.5",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 1,
"output": 5,
"cacheRead": 0.1,
"cacheWrite": 1.25
},
"contextWindow": 200000,
"maxTokens": 64000
},
{
"id": "claude-haiku-4-5-20251001",
"name": "Claude Haiku 4.5 20251001",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 1,
"output": 5,
"cacheRead": 0.1,
"cacheWrite": 1.25
},
"contextWindow": 200000,
"maxTokens": 64000
},
{
"id": "claude-haiku-4-5-20251001-thinking",
"name": "Claude Haiku 4.5 20251001 Thinking",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 1,
"output": 5,
"cacheRead": 0.1,
"cacheWrite": 1.25
}
},
{
"id": "claude-haiku-4-5-thinking",
"name": "Claude Haiku 4.5 Thinking",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 1,
"output": 5,
"cacheRead": 0.1,
"cacheWrite": 1.25
}
},
{
"id": "claude-opus-4-7",
"name": "Claude Opus 4.7",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 5,
"output": 25,
"cacheRead": 0.5,
"cacheWrite": 6.25
},
"contextWindow": 1000000,
"maxTokens": 128000
},
{
"id": "claude-opus-4-8",
"name": "Claude Opus 4.8",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 5,
"output": 25,
"cacheRead": 0.5,
"cacheWrite": 6.25
},
"contextWindow": 1000000,
"maxTokens": 128000
},
{
"id": "claude-opus-5",
"name": "Claude Opus 5",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 5,
"output": 25,
"cacheRead": 0.5,
"cacheWrite": 6.25
},
"contextWindow": 1000000,
"maxTokens": 128000
},
{
"id": "claude-opus-5-5",
"name": "Claude Opus 5.5",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 4,
"output": 20,
"cacheRead": 0.2,
"cacheWrite": 5
},
"contextWindow": 1000000,
"maxTokens": 128000
},
{
"id": "claude-sonnet-5-5",
"name": "Claude Sonnet 5.5",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 2,
"output": 10,
"cacheRead": 0.1,
"cacheWrite": 2.5
},
"contextWindow": 1000000
},
{
"id": "claude-haiku-5-5",
"name": "Claude Haiku 5.5",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 0.1,
"output": 0.5,
"cacheRead": 0.01,
"cacheWrite": 0.125
},
"contextWindow": 1000000,
"maxTokens": 128000
},
{
"id": "claude-opus-5-thinking",
"name": "Claude Opus 5 Thinking",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 5,
"output": 25,
"cacheRead": 0.5,
"cacheWrite": 6.25
}
},
{
"id": "claude-sonnet-4-6",
"name": "Claude Sonnet 4.6",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 3,
"output": 15,
"cacheRead": 0.3,
"cacheWrite": 3.75
},
"contextWindow": 1000000,
"maxTokens": 64000
},
{
"id": "claude-sonnet-5",
"name": "Claude Sonnet 5",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 2,
"output": 10,
"cacheRead": 0.2,
"cacheWrite": 2.5
},
"contextWindow": 1000000
},
{
"id": "claude-sonnet-5-thinking",
"name": "Claude Sonnet 5 Thinking",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 2,
"output": 10,
"cacheRead": 0.2,
"cacheWrite": 2.5
},
"contextWindow": 1000000
},
{
"id": "claude-fable-5-1",
"name": "Claude Fable 5.1",
"api": "anthropic-messages",
"input": [
"text",
"image"
],
"cost": {
"input": 10,
"output": 50,
"cacheRead": 0.25,
"cacheWrite": 12.5
},
"contextWindow": 1000000
}
]
}
}
}
}

mode: "merge" сохраняет встроенных провайдеров OpenClaw рядом с OneProvider — поменяйте на "replace", если хотите получать Claude только через нас.

Стоимость в конфиге обнулена OpenClaw требует блок cost для каждой модели для рендера UI, но фактическийбиллинг происходит на нашей стороне, см. тарифы для цифр, которые попадают в кошелёк.

Быстрые ответы

Какой base URL использовать?

Claude Code и Anthropic SDK работают с https://api.oneprovider.dev. OpenAI SDK и OpenAI-совместимые клиенты работают с https://api.oneprovider.dev/v1. За обоими адресами один ключ; список моделей: странице моделей , ставки на странице тарифов .

Как авторизоваться?

Передайте сырой ключ sk-… в заголовке x-api-key или Authorization: Bearer: один из двух, не оба. Храните ключ в переменной окружения, а не в файле, который попадает в репозиторий. Подробнее об аутентификации .

Где взять ключ?

Откройте кабинет в Telegram-боте @oneprovider_robot или на app.oneprovider.dev, пополните баланс и нажмите «Выпустить ключ». У каждого ключа может быть свой лимит расхода. Кабинет и ключи .

Что значат ошибки 401, 404 и 429?

401: ключ не задан, написан с ошибкой или передан не в том заголовке; вставьте ключ целиком, без кавычек и пробелов. 404: обычно неверный base URL, например лишний или двойной /v1. 429 с текстом «Insufficient balance»: баланс кабинета или лимит ключа исчерпан, пополните его вместо повторов; любой другой 429 это лимит частоты, подождите Retry-After. Разбор: коды ошибок и решение проблем .

Почему обрывается стрим или сбрасывается соединение?

VPN и VLESS-прокси часто буферизуют SSE или ломают согласование HTTP/2. У OneProvider нет региональных ограничений, и стримы на нашей стороне не буферизуются: отключите прокси и повторите запрос.

Куда писать, если не помогло?

Напишите в Telegram @Oneproviderhelpbot или откройте «Поддержку» в веб-кабинете: приложите код статуса и точный текст ошибки. Как работает поддержка .

Последнее обновление: 2026-10-05 Нашли ошибку? @Oneproviderhelpbot