Uso de tokens y costos
OpenClaw rastrea tokens, no caracteres. Los tokens son específicos del modelo, pero la mayoría de los modelos de estilo OpenAI promedian ~4 caracteres por token en texto en inglés.Cómo se construye el prompt del sistema
OpenClaw ensambla su propio prompt del sistema en cada ejecución. Incluye:- Lista de herramientas + descripciones breves
- Lista de Skills (solo metadatos; las instrucciones se cargan bajo demanda con
read) - Instrucciones de autoactualización
- Archivos del espacio de trabajo + bootstrap (
AGENTS.md,SOUL.md,TOOLS.md,IDENTITY.md,USER.md,HEARTBEAT.md,BOOTSTRAP.mdcuando es nuevo, además deMEMORY.mdcuando está presente omemory.mdcomo alternativa en minúsculas). Los archivos grandes se truncan segúnagents.defaults.bootstrapMaxChars(predeterminado: 20000), y la inyección total de bootstrap está limitada poragents.defaults.bootstrapTotalMaxChars(predeterminado: 150000). Los archivosmemory/*.mdse usan bajo demanda mediante herramientas de memoria y no se inyectan automáticamente. - Hora (UTC + zona horaria del usuario)
- Etiquetas de respuesta + comportamiento de heartbeat
- Metadatos de runtime (host/OS/model/thinking)
Qué cuenta en la ventana de contexto
Todo lo que recibe el modelo cuenta para el límite de contexto:- Prompt del sistema (todas las secciones indicadas arriba)
- Historial de conversación (mensajes del usuario + asistente)
- Llamadas a herramientas y resultados de herramientas
- Archivos adjuntos/transcripciones (imágenes, audio, archivos)
- Resúmenes de compactación y artefactos de poda
- Wrappers del proveedor o encabezados de seguridad (no visibles, pero igualmente contabilizados)
agents.defaults.imageMaxDimensionPx (predeterminado: 1200) para ajustar esto:
- Los valores más bajos suelen reducir el uso de vision tokens y el tamaño de la carga útil.
- Los valores más altos conservan más detalle visual para capturas de pantalla con mucho OCR/UI.
/context list o /context detail. Consulta Contexto.
Cómo ver el uso actual de tokens
Usa esto en el chat:/status→ tarjeta de estado con muchos emojis con el modelo de la sesión, uso de contexto, tokens de entrada/salida de la última respuesta y costo estimado (solo con API key)./usage off|tokens|full→ agrega un pie de uso por respuesta a cada respuesta.- Persiste por sesión (se almacena como
responseUsage). - La autenticación OAuth oculta el costo (solo tokens).
- Persiste por sesión (se almacena como
/usage cost→ muestra un resumen local de costos a partir de los registros de sesión de OpenClaw.
- TUI/Web TUI:
/statusy/usageson compatibles. - CLI:
openclaw status --usageyopenclaw channels listmuestran ventanas de cuota del proveedor normalizadas (X% left, no costos por respuesta). Proveedores actuales con ventana de uso: Anthropic, GitHub Copilot, Gemini CLI, OpenAI Codex, MiniMax, Xiaomi y z.ai.
input_tokens /
output_tokens como prompt_tokens / completion_tokens, de modo que los nombres de campo
específicos del transporte no cambian /status, /usage ni los resúmenes de sesión.
El uso JSON de Gemini CLI también se normaliza: el texto de respuesta proviene de response, y
stats.cached se asigna a cacheRead, con stats.input_tokens - stats.cached
usado cuando la CLI omite un campo stats.input explícito.
Para el tráfico nativo de Responses de la familia OpenAI, los alias de uso de WebSocket/SSE se
normalizan de la misma forma, y los totales recurren a la suma normalizada de entrada + salida cuando
total_tokens falta o es 0.
Cuando la instantánea de la sesión actual es escasa, /status y session_status también pueden
recuperar contadores de tokens/cache y la etiqueta del modelo de runtime activo del registro de uso
de la transcripción más reciente. Los valores activos distintos de cero existentes siguen teniendo
prioridad sobre los valores de respaldo de la transcripción, y los totales de transcripción más grandes
orientados al prompt pueden prevalecer cuando los totales almacenados faltan o son menores.
La autenticación de uso para ventanas de cuota del proveedor proviene de hooks específicos del proveedor cuando
están disponibles; de lo contrario, OpenClaw recurre a credenciales OAuth/API-key coincidentes
de perfiles de autenticación, env o config.
Estimación de costos (cuando se muestra)
Los costos se estiman a partir de tu configuración de precios del modelo:input, output, cacheRead y
cacheWrite. Si faltan los precios, OpenClaw muestra solo tokens. Los tokens OAuth
nunca muestran costo en dólares.
Impacto del TTL de caché y la poda
El almacenamiento en caché del prompt del proveedor solo se aplica dentro de la ventana TTL de la caché. OpenClaw puede ejecutar opcionalmente poda de cache-ttl: poda la sesión una vez que el TTL de la caché ha expirado y luego restablece la ventana de caché para que las solicitudes posteriores puedan reutilizar el contexto recién almacenado en caché en lugar de volver a almacenar en caché todo el historial. Esto mantiene más bajos los costos de escritura en caché cuando una sesión queda inactiva más allá del TTL. Configúralo en Configuración del Gateway y consulta los detalles del comportamiento en Poda de sesión. Heartbeat puede mantener la caché activa durante periodos de inactividad. Si el TTL de la caché de tu modelo es1h, establecer el intervalo de heartbeat justo por debajo de eso (por ejemplo, 55m) puede evitar
volver a almacenar en caché todo el prompt, reduciendo los costos de escritura en caché.
En configuraciones con varios agentes, puedes mantener una configuración de modelo compartida y ajustar el comportamiento de caché
por agente con agents.list[].params.cacheRetention.
Para una guía completa, control por control, consulta Prompt Caching.
Para los precios de la API de Anthropic, las lecturas de caché son significativamente más baratas que los
tokens de entrada, mientras que las escrituras de caché se facturan con un multiplicador mayor. Consulta los precios de
prompt caching de Anthropic para ver las tarifas y multiplicadores TTL más recientes:
https://docs.anthropic.com/docs/build-with-claude/prompt-caching
Ejemplo: mantener activa una caché de 1h con heartbeat
Ejemplo: tráfico mixto con estrategia de caché por agente
agents.list[].params se fusiona sobre params del modelo seleccionado, así que puedes
sobrescribir solo cacheRetention y heredar sin cambios otros valores predeterminados del modelo.
Ejemplo: habilitar el encabezado beta de contexto 1M de Anthropic
La ventana de contexto 1M de Anthropic actualmente está protegida por beta. OpenClaw puede inyectar el valoranthropic-beta necesario cuando habilitas context1m en modelos Opus
o Sonnet compatibles.
context-1m-2025-08-07 de Anthropic.
Esto solo se aplica cuando context1m: true está configurado en esa entrada del modelo.
Requisito: la credencial debe ser apta para uso de contexto largo (facturación con API key,
o la ruta de inicio de sesión de Claude de OpenClaw con Extra Usage habilitado). Si no,
Anthropic responde
con HTTP 429: rate_limit_error: Extra usage is required for long context requests.
Si autenticas Anthropic con tokens OAuth/de suscripción (sk-ant-oat-*),
OpenClaw omite el encabezado beta context-1m-* porque Anthropic actualmente
rechaza esa combinación con HTTP 401.
Consejos para reducir la presión de tokens
- Usa
/compactpara resumir sesiones largas. - Recorta las salidas grandes de herramientas en tus flujos de trabajo.
- Reduce
agents.defaults.imageMaxDimensionPxpara sesiones con muchas capturas de pantalla. - Mantén breves las descripciones de Skills (la lista de Skills se inyecta en el prompt).
- Prefiere modelos más pequeños para trabajo prolijo y exploratorio.