Autopsia: Claude Max + Errores de facturación de OpenClaw por OAuth desactualizado y trabajos cron aislados

Una instalación autogestionada de OpenClaw con Claude Max empezó a devolver billing error — API key has run out of credits a pesar de estar muy por debajo del límite. Dos días de depuración revelaron dos causas raíz y una cadena de fallos que hace que el error parezca aleatorio.
Causa Raíz 1: Token OAuth Caducado Envenena Todo el Proveedor
El archivo auth-profiles.json tenía dos entradas: un perfil OAuth válido anthropic:claude-cli y un perfil anthropic:manual con un token sk-ant-oat01-.... Cuando el token manual caducó, OpenClaw no solo falló ese perfil, sino que lo clasificó como un fallo de facturación a nivel de proveedor y bloqueó todo el proveedor anthropic, saltándose todos los modelos, incluido el perfil OAuth saludable. Los registros mostraban:
reason: "billing" errorPreview: "Provider anthropic has billing issue (skipping all models)" chain_exhausted
El perfil OAuth saludable con un token de actualización válido nunca se intentó.
Solución: Eliminar por completo anthropic:manual de auth-profiles.json y openclaw.json. Mantener solo anthropic:claude-cli.
Causa Raíz 2: Trabajos Cron Aislados golpean un Bucket de Facturación Separado
OpenClaw tiene dos rutas de ejecución:
- Sesiones principales — ejecutan el binario
/usr/bin/claude, facturado a la suscripción Max/Pro ✅ - Ejecuciones aisladas/embebidas — HTTP directo a la API de Anthropic, facturado al bucket de Uso Extra ❌
Los trabajos cron con sessionTarget: isolated inician un agente embebido independiente que llama directamente a la API de Anthropic vía HTTP — sin los encabezados de Claude Code que envía la CLI. Anthropic lo dirige al bucket de Uso Extra, una cuota completamente separada. Con Uso Extra desactivado, cada ejecución cron aislada devuelve un 400. OpenClaw empeora la situación: un error de facturación establece disabledUntil aproximadamente 24 horas hacia adelante en auth-state.json, bloqueando todas las solicitudes — incluyendo el chat normal — hasta que termine el enfriamiento. El bloqueo sobrevive a reinicios de la puerta de enlace.
La Cadena Completa de Fallos
- Reinicio de la puerta de enlace → trabajos cron perdidos se encolan para ponerse al día
- El agente aislado se ejecuta vía el ejecutor embebido → llamada HTTP directa a la API de Anthropic (sin encabezados de CLI)
- Bucket de Uso Extra → error 400
- OpenClaw bloquea el perfil de autenticación durante ~24h → todas las solicitudes bloqueadas, incluido el chat normal
Soluciones
- Limpiar el bloqueo de facturación inmediatamente:
python3 -c " import json with open('/home/USER/.openclaw/agents/main/agent/auth-state.json') as f: d = json.load(f) if 'usageStats' in d: for profile in d['usageStats']: d['usageStats'][profile].pop('disabledUntil', None) d['usageStats'][profile].pop('failureCounts', None) d['usageStats'][profile].pop('errorCount', None) d['usageStats'][profile].pop('disabledReason', None) d['usageStats'][profile].pop('lastFailureAt', None) with open('/home/USER/.openclaw/agents/main/agent/auth-state.json', 'w') as f: json.dump(d, f, indent=2) print('Limpiado.') " openclaw gateway restart - Mover todos los trabajos cron de
isolatedamain:python3 -c " import json with open('/home/USER/.openclaw/cron/jobs.json') as f: d = json.load(f) jobs = d if isinstance(d, list) else d.get('jobs', []) for j in jobs: if j.get('sessionTarget') == 'isolated': print(f'Corrigiendo: {j["name"]}') j['sessionTarget'] = 'main' with open('/home/USER/.openclaw/cron/jobs.json', 'w') as f: json.dump(d, f, indent=2) print('Hecho.') "
Para quién es: Cualquiera que autogestione OpenClaw con Claude Max o Pro y vea errores de facturación aleatorios a pesar de estar por debajo del límite.
📖 Leer la fuente original: r/openclaw
👀 Ver también

Configuración Local de Claude Code con Qwen3.5 27B mediante llama.cpp
Un desarrollador comparte su configuración para ejecutar Claude Code localmente usando Qwen3.5 27B con llama.cpp, incluyendo variables de entorno, parámetros del servidor y benchmarks de rendimiento en siete tareas de programación.

30 días de Claude para negocios freelance: 5 indicaciones que funcionan
Un freelancer probó Claude a diario durante 30 días y comparte 5 prompts que redujeron la redacción de propuestas de 45 a 5 minutos, aumentaron las tarifas un 30% sin resistencia, y triplicaron las tasas de respuesta en presentaciones en frío.

Construyendo Habilidades de Claude para Automatizar Procesos Cognitivos
Claude Code incluye un creador de habilidades integrado que te permite construir habilidades impulsadas por IA describiendo procesos en lenguaje natural en lugar de escribir código. La fuente describe la creación de una habilidad de validación de startups que redujo un proceso manual de 2 días a 15 minutos.

Conector de Todoist eliminado de Claude, se requiere configuración personalizada
El conector oficial de Todoist ya no está disponible en Claude. Los usuarios pueden agregar Todoist como un conector personalizado usando la URL MCP https://ai.todoist.net/mcp, pero esto requiere una suscripción a Claude Pro o Max.