OpenClaw
Añade OneProvider a OpenClaw como proveedor anthropic-messages personalizado en su archivo de config. Al reiniciar, el cliente lo suma a sus modelos.
Añade OneProvider como proveedor personalizado Anthropic-messages en la configuración de OpenClaw. El cliente lo combina automáticamente con su catálogo de modelos al reiniciar.
Todos los modelos, capacidades y precios Índice de la documentación para agentes de IA:https://oneprovider.dev/docs/llms.txt Antes de empezar: una clave de tu panel Abre tu panel: el bot de Telegram @oneprovider_robot (Panel) o app.oneprovider.dev . Pulsa “Emitir una clave”, ponle un nombre (por ejemplo, este cliente) y un límite de gasto, y copia la clave. El saldo se recarga en el mismo lugar. Más sobre el panel y las claves . Configuración
Ruta de configuración por defecto: ~/.config/openclaw/openclaw.json. Crea el archivo si no existe, pega el fragmento de abajo y reinicia OpenClaw.
{
"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-6",
"name": "Claude Opus 4.6",
"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-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" conserva los proveedores integrados de OpenClaw junto a OneProvider; cámbialo a "replace" si solo quieres Claude con nosotros.
Respuestas rápidas
¿Qué base URL uso?
Claude Code y los SDK de Anthropic usan https://api.oneprovider.dev. Los SDK de OpenAI y los clientes compatibles con OpenAI usan https://api.oneprovider.dev/v1. Una misma clave funciona con ambas; la lista de modelos está en la página de modelos y las tarifas, en la página de precios .
¿Cómo me autentico?
Envía la clave sk-… tal cual en x-api-key o en Authorization: Bearer: en uno de los dos, nunca en ambos. Guarda la clave en una variable de entorno, no en un archivo que se suba al repositorio. Más sobre la autenticación .
¿Dónde obtengo una clave?
Abre tu panel en el bot de Telegram @oneprovider_robot o en app.oneprovider.dev, recarga el saldo y pulsa “Emitir una clave”. Cada clave puede tener su propio límite de gasto. Panel y claves de API .
¿Qué significan 401, 404 y 429?
401: falta la clave, está mal escrita o se envió en un encabezado equivocado; pega la clave completa, sin comillas ni espacios. 404: casi siempre es una base URL incorrecta, por ejemplo con /v1 ausente o duplicado. 429 con “Insufficient balance”: se agotó el saldo del panel o el límite de gasto de la clave, así que recarga en lugar de reintentar; cualquier otro 429 es un límite de frecuencia, así que espera según Retry-After. Detalles: códigos de error y solución de problemas .
¿Por qué se cortan o se reinician los streams?
Las VPN y los proxies VLESS suelen almacenar SSE en búfer o romper la negociación de HTTP/2. OneProvider no tiene restricciones regionales y no almacena los streams en búfer: desactiva el proxy y reintenta.
¿Dónde pregunto si esto no basta?
Escribe a @Oneproviderhelpbot en Telegram o abre “Soporte” en el panel web, con el código de estado HTTP y el mensaje de error exacto. Cómo funciona el soporte .
Última actualización: 2026-11-08 ¿Encontraste un error? @Oneproviderhelpbot