OpenClaw admite “autenticación de suscripción” mediante OAuth para proveedores que la ofrecen (en particular OpenAI Codex (ChatGPT OAuth)). Para Anthropic, la división práctica ahora es:Documentation Index
Fetch the complete documentation index at: https://docs.openclaw.ai/llms.txt
Use this file to discover all available pages before exploring further.
- clave de API de Anthropic: facturación normal de la API de Anthropic
- Claude CLI de Anthropic / autenticación de suscripción dentro de OpenClaw: el personal de Anthropic nos dijo que este uso está permitido de nuevo
- cómo funciona el intercambio de tokens de OAuth (PKCE)
- dónde se almacenan los tokens (y por qué)
- cómo gestionar varias cuentas (perfiles + anulaciones por sesión)
El sumidero de tokens (por qué existe)
Los proveedores de OAuth suelen emitir un nuevo refresh token durante los flujos de inicio de sesión/actualización. Algunos proveedores (o clientes OAuth) pueden invalidar refresh tokens anteriores cuando se emite uno nuevo para el mismo usuario/aplicación. Síntoma práctico:- inicias sesión mediante OpenClaw y mediante Claude Code / Codex CLI → uno de ellos queda “desconectado” aleatoriamente más tarde
auth-profiles.json como un sumidero de tokens:
- el entorno de ejecución lee credenciales desde un solo lugar
- podemos mantener varios perfiles y enrutarlos de forma determinista
- la reutilización de CLI externos es específica del proveedor: Codex CLI puede inicializar un perfil vacío
openai-codex:default, pero una vez que OpenClaw tiene un perfil OAuth local, el refresh token local es canónico; otras integraciones pueden seguir gestionadas externamente y volver a leer su almacén de autenticación de CLI - las rutas de estado e inicio que ya conocen el conjunto de proveedores configurados limitan el descubrimiento de CLI externos a ese conjunto, para que no se sondee un almacén de inicio de sesión de CLI no relacionado en una configuración de un solo proveedor
Almacenamiento (dónde viven los tokens)
Los secretos se almacenan en los almacenes de autenticación del agente:- Perfiles de autenticación (OAuth + claves de API + refs opcionales a nivel de valor):
~/.openclaw/agents/<agentId>/agent/auth-profiles.json - Archivo de compatibilidad heredada:
~/.openclaw/agents/<agentId>/agent/auth.json(las entradas estáticasapi_keyse depuran cuando se descubren)
~/.openclaw/credentials/oauth.json(se importa aauth-profiles.jsonen el primer uso)
$OPENCLAW_STATE_DIR (anulación del directorio de estado). Referencia completa: /gateway/configuration
Para refs de secretos estáticos y el comportamiento de activación de instantáneas en tiempo de ejecución, consulta Gestión de secretos.
Cuando un agente secundario no tiene un perfil de autenticación local, OpenClaw usa herencia de lectura directa
desde el almacén del agente predeterminado/principal. No clona el
auth-profiles.json del agente principal al leer. Los refresh tokens de OAuth son especialmente
sensibles: los flujos normales de copia los omiten de forma predeterminada porque algunos proveedores rotan
o invalidan refresh tokens después de usarlos. Configura un inicio de sesión OAuth separado para un
agente cuando necesite una cuenta independiente.
Compatibilidad con tokens heredados de Anthropic
OpenClaw también expone el token de configuración de Anthropic como una ruta de autenticación con token admitida, pero ahora prefiere la reutilización de Claude CLI yclaude -p cuando están disponibles.
Migración de Claude CLI de Anthropic
OpenClaw vuelve a admitir la reutilización de Claude CLI de Anthropic. Si ya tienes un inicio de sesión local de Claude en el host, onboarding/configure puede reutilizarlo directamente.Intercambio OAuth (cómo funciona el inicio de sesión)
Los flujos de inicio de sesión interactivo de OpenClaw están implementados en@earendil-works/pi-ai y conectados a los asistentes/comandos.
Token de configuración de Anthropic
Forma del flujo:- inicia el token de configuración de Anthropic o pega el token desde OpenClaw
- OpenClaw almacena la credencial de Anthropic resultante en un perfil de autenticación
- la selección de modelo permanece en
anthropic/... - los perfiles de autenticación existentes de Anthropic siguen disponibles para control de reversión/orden
OpenAI Codex (ChatGPT OAuth)
OpenAI Codex OAuth está admitido explícitamente para su uso fuera de Codex CLI, incluidos los flujos de trabajo de OpenClaw. Forma del flujo (PKCE):- genera el verificador/desafío PKCE +
statealeatorio - abre
https://auth.openai.com/oauth/authorize?... - intenta capturar la devolución de llamada en
http://127.0.0.1:1455/auth/callback - si la devolución de llamada no puede enlazarse (o estás en remoto/sin interfaz), pega la URL/código de redirección
- intercambia en
https://auth.openai.com/oauth/token - extrae
accountIddel token de acceso y almacena{ access, refresh, expires, accountId }
openclaw onboard → elección de autenticación openai-codex.
Actualización + caducidad
Los perfiles almacenan una marca de tiempoexpires.
En tiempo de ejecución:
- si
expiresestá en el futuro → usa el token de acceso almacenado - si caducó → actualiza (bajo un bloqueo de archivo) y sobrescribe las credenciales almacenadas
- si un agente secundario lee un perfil OAuth heredado del agente principal, la actualización escribe de vuelta en el almacén del agente principal en lugar de copiar el refresh token al almacén del agente secundario
- excepción: algunas credenciales de CLI externos siguen gestionadas externamente; OpenClaw
vuelve a leer esos almacenes de autenticación de CLI en lugar de gastar refresh tokens copiados.
La inicialización de Codex CLI es intencionalmente más estrecha: siembra un perfil vacío
openai-codex:default, y luego las actualizaciones propiedad de OpenClaw mantienen el perfil local como canónico.
Varias cuentas (perfiles) + enrutamiento
Dos patrones:1) Preferido: agentes separados
Si quieres que “personal” y “trabajo” nunca interactúen, usa agentes aislados (sesiones + credenciales + espacio de trabajo separados):2) Avanzado: varios perfiles en un agente
auth-profiles.json admite varios IDs de perfil para el mismo proveedor.
Elige qué perfil se usa:
- globalmente mediante el orden de configuración (
auth.order) - por sesión mediante
/model ...@<profileId>
/model Opus@anthropic:work
openclaw channels list --json(muestraauth[])
- Conmutación por error de modelos (reglas de rotación + enfriamiento)
- Comandos de barra diagonal (superficie de comandos)
Relacionado
- Autenticación - resumen de autenticación de proveedores de modelos
- Secretos - almacenamiento de credenciales y SecretRef
- Referencia de configuración - claves de configuración de autenticación