Volver a las guías
Agentes de programación·21 de septiembre de 2026·Actualizado el 1 de octubre de 2026·11 min de lectura

Se superó el presupuesto de contexto de IronClaw: cuatro errores, un número codificado de forma fija

Cuatro errores comparten esa redacción; ninguno corresponde a la ventana de tu modelo, y ninguna clave de configuración, variable de entorno o indicador de CLI cambia el número subyacente de ninguno de ellos.

Última revisión: .

«Context budget exceeded» no es un único error en IronClaw. Cuatro variantes de error distintas contienen ese texto; ninguna corresponde a la ventana de contexto de tu modelo, y ningún archivo de configuración, variable de entorno u opción de CLI cambia la cifra que hay detrás de cualquiera de ellas. El presupuesto es de 128,000 tokens incorporados en la compilación, con una reserva de 20,000 tokens, y los tres canales que lo llenan —archivos de identidad, fragmentos de skills y esquemas de herramientas— se ensamblan por encima de esa asignación en lugar de dentro de ella; esto aparece en el propio informe de defecto abierto de IronClaw, no es una teoría de esta página.

Una aclaración, porque el nombre es ambiguo. Se trata de github.com/nearai/ironclaw, el runtime de agentes en Rust de NEAR AI; no del ratón gaming de Corsair que domina las búsquedas comerciales de la palabra, ni de la empresa no relacionada ironclaw.tech, que también vende software de agentes y también se compara con OpenClaw. IronClaw frente a OpenClaw establece esa distinción en detalle. Todas las cifras del nivel del código fuente que aparecen a continuación se leyeron desde main en el commit b0b999d (confirmado el 10 de septiembre de 2026), el 21 de septiembre de 2026, mediante la API de contenidos de GitHub. Ese commit es posterior a la etiqueta de lanzamiento ironclaw-v1.4.0 publicada el 28 de agosto de 2026. El 1 de octubre de 2026 se ejecutó contra un endpoint de prueba local el binario de lanzamiento más reciente, ironclaw-v1.4.1 (publicado el 29 de septiembre de 2026, un parche para Google OAuth y Wasmtime sin cambios de presupuesto en sus notas); lo que hizo se registra a continuación y se limita a esa versión, mientras que las cifras del código fuente siguen limitadas al commit.

Qué «context budget exceeded» estás viendo

Estas son cadenas de visualización de Rust de thiserror, que es lo que aparece en los registros y en los detalles del error. Leer el texto exacto indica qué canal ha fallado.

Cadena exactaDónde se produceQué lo activa
skill context: context budget exceededironclaw_loop_contracts/src/skill_context.rsUn fragmento de skill supera los 64 KiB de contenido del modelo, o todos ellos superan los 256 KiB en total. Son bytes, no tokens, y falla toda la construcción del contexto de skills en lugar de descartar al infractor
skill context budget exceededironclaw_loop_host/src/skill_bundle_context_source.rsMás de 100 candidatos visibles de paquetes de skills, contados antes de que se realice cualquier cálculo de presupuesto de tokens. La capa host también vuelve a emitir este texto cuando asigna el error de bytes del nivel de contratos indicado anteriormente, por lo que la cadena por sí sola no permite distinguir ambos casos
skill activation context budget exceededskill_activation/activation.rsMás de 8 skills activas en un turno, o una skill cuyo coste estimado supera el presupuesto de tokens restante del selector. Ese presupuesto es de 4,000 según el valor predeterminado del propio selector y de 6,000 cuando el runtime de composición conecta la fuente de skills del sistema de archivos
identity context budget exceededironclaw_loop_host/src/identity_context.rsNada, por ahora. El comentario de su propia documentación dice que está «Reservado para un futuro modo de límite estricto» y que el constructor «trunca silenciosamente cuando se desborda el presupuesto en lugar de devolver este error»

Lo que ve un usuario ante un desbordamiento real del modelo no contiene ninguna de esas palabras. La proyección del fallo, escrita por el host, es la frase fija «The run failed because the model context was too large. Retry with a shorter request or start a new thread.», y el error asignado por el proveedor desde el gateway del modelo es «model request exceeded its context budget». Dos advertencias. Esta página no rastreó una ejecución de extremo a extremo, por lo que aquí no se ha establecido qué frase visible para el usuario termina proyectando un fallo del canal de skills. Además, una cadena muy repetida, «Model request context exceeds the available input budget», no aparece en ningún lugar de nearai/ironclaw; pertenece a otro proyecto de agentes y no debe usarse para diagnosticar este caso.

Los 128,000 que no puedes configurar

PromptContextTokenBudget proporciona tres constantes: un límite de contexto de 128,000 tokens, una reserva de 20,000 tokens y una cifra de salida máxima del bucle principal de 0. La transcripción visible es el límite menos el mayor de los dos últimos valores, es decir, 108,000 tokens; es aritmética derivada de los valores predeterminados, no un literal del archivo. El tercer término nunca se asigna fuera de las pruebas, por lo que la reserva siempre es de 20,000 exactos. Además, toda construcción que no sea de prueba en el repositorio utiliza el valor simple PromptContextTokenBudget::default(): uno en la estrategia de compactación y otro en el valor predeterminado de TextOnlyLoopHostConfig del host del controlador del bucle; todas las llamadas a ::new(…) con cifras diferentes están dentro de un módulo #[cfg(test)].

La propia issue #5739 de IronClaw lo dice en el título: «Effective context budget is a hardcoded 128K that ignores the model's context_length and has no config override»; está abierta desde el 6 de julio de 2026 y seguía abierta el 21 de septiembre de 2026. De ahí se derivan tres trampas:

  • Las claves budget.* no son esto. La página de configuración de IronClaw documenta budget.user_daily_usd, budget.pause_at y otras claves relacionadas en una sección titulada «budget — cost controls», descrita allí como un límite del gasto del agente. Son configuraciones monetarias; dos de ellas, budget.overestimate_factor y budget.default_tz, son un multiplicador y una zona horaria, no importes en dólares. Ninguna clave, en ningún nivel, establece un límite de contexto, una reserva, el límite de identidad o el presupuesto de skills; además, el orden de precedencia publicado es «compiled defaults < config.toml < environment variables < CLI flags», por lo que una clave ausente está ausente en todas partes.
  • El PR #5790 conduce a una falsa pista. Su título ofrece una «prompt-context budget override through host factory». La API informa de que se cerró el 27 de agosto de 2026 con merged: false.
  • Las correcciones son todas propuestas. #8053, que usaría el 90 % de la ventana anunciada de un modelo con la misma reserva de 20 000, junto con #7976 y #5435, seguían abiertas cuando se comprobaron.

Para un endpoint de terceros hay un paso adicional, y es el decisivo. ModelMetadata.context_length es un Option, el valor predeterminado del trait LlmProvider devuelve None —«Default returns the model name with no size info»— y el adaptador genérico compatible con OpenAI no define ninguna sobrescritura, por lo que hereda ese valor predeterminado. Por tanto, un endpoint personalizado nunca anuncia una ventana. IronClaw planifica 108,000 tokens de transcripción tanto si tu modelo admite un millón como si admite 32,000, y #8053 leería exactamente el campo que esta ruta nunca establece. Consulta Configuración de la API personalizada de IronClaw para saber cómo se configura ese endpoint; esta página se mantiene centrada en el presupuesto.

Los canales que llenan el prompt sin tocar el presupuesto

La issue abierta de mejora #8057 de IronClaw, presentada el 3 de septiembre de 2026 y todavía abierta cuando se comprobó, explica el mecanismo con las propias palabras del proveedor: el presupuesto del prompt «dimensiona únicamente la transcripción», mientras que el contenido de identidad, los fragmentos de skills y memoria, el contexto del canal y los esquemas de herramientas «se ensamblan por encima de la asignación de la transcripción sin reducirla, por lo que la solicitud que recibe el proveedor puede superar el presupuesto que el bucle cree estar respetando». Esto es un informe de defecto, no documentación de comportamiento distribuido; pero explica por qué una ejecución puede fallar por tamaño aunque cada canal individual parezca respetar su límite.

CanalSu propio límiteComportamiento al alcanzar el límite
Tokens de transcripción108,000 estimadosRecorre los mensajes empezando por los más recientes y hace break en el primer mensaje que no cabe, descartando todos los anteriores. Es deliberado en main: omitir un mensaje intermedio «puede dejar huérfanas las llamadas a herramientas del proveedor respecto de sus referencias de resultados»
Mensajes de la transcripción128Se aplicó un límite de cantidad independiente antes de calcular el presupuesto de tokens, por lo que un hilo largo de mensajes cortos se corta cuando aún está muy por debajo de 108,000
Archivos de identidad8,000 estimadosTambién breaks, por lo que todo lo que sigue al primer candidato sobredimensionado también se descarta, de forma silenciosa. Los candidatos provienen de una lista permitida fija de 11 archivos que incluye SOUL.md, AGENTS.md, SYSTEM.md y MEMORY.md
Activación de habilidades8 ranuras; 4,000 tokens estimados según el valor predeterminado del selector, 6,000 cuando el tiempo de ejecución de composición los conectaGenera skill activation context budget exceeded en cualquiera de los dos casos
Bytes del fragmento de habilidad64 KiB cada uno, 256 KiB en totalError irrecuperable; falla toda la compilación
Herramientas anunciadas12,000 tokens estimados, 32 herramientas — o una décima parte de la ventana del modelo, lo que sea menor, cuando se conoce una ventanaPospone el resto. No limita los 27 nombres de herramientas principales que se anuncian independientemente del modo
Tarea aceptada fijadaDebe caber por sí sola dentro de 108,000Clase de error completamente distinta: accepted task exceeds the prompt context token budget, generada antes de cualquier reintento

El componente de herramientas se puede medir, e IronClaw lo mide. Su benchmark incorporado al repositorio, sobre un conjunto de prueba sintético de 93 herramientas, registra una reducción de 21 355 a 3 843 tokens de esquema estimados con 22 herramientas anunciadas — un 82,0 %, controlada en el repositorio mediante una tolerancia de desviación de 2,0 puntos y un mínimo del 50,0 %. Esos números se leyeron del archivo de pruebas, no se obtuvieron al ejecutarlo aquí — la carga medida del binario publicado está en la sección anterior, y tiene una composición distinta: el conjunto de herramientas predeterminado, no un conjunto de prueba de 93 herramientas. Considéralos estimaciones internas de IronClaw basadas en el recuento de caracteres de un conjunto de prueba, no como tu prompt de herramientas ni como recuentos del tokenizador del proveedor. La interpretación fiel es la estructura: la divulgación progresiva elimina la mayor parte del esquema y aun así deja un mínimo de unos pocos miles de tokens que ninguna configuración elimina, porque los 27 nombres de herramientas básicas se anuncian en todos los modos de divulgación.

Qué hizo el binario publicado 1.4.1

El 1 de octubre de 2026, el binario de la versión ironclaw-v1.4.1, verificado mediante checksum, se ejecutó en un contenedor desechable con una ranura [llm.default] en el proveedor openai_compatible, dirigido a un servidor de pruebas local que registró cada solicitud. Un mensaje corto por ejecución mediante ironclaw repl:

REBORN_TOOL_DISCLOSUREEsquemas de herramientas en la solicitudBytes del esquema de herramientas
sin establecer, namespaces o bridged26 — 23 integradas más tool_search, tool_describe y tool_call35,703
compact2635,406
signatures2635,435
off5061,630
true — no es un valor válido5061,630, idéntico a off

Por tanto, el suelo es real en la compilación publicada: ningún modo de divulgación envió menos de 26 esquemas, y según la propia estimación de IronClaw de cuatro caracteres por token, 35,703 bytes equivalen aproximadamente a 8,900 tokens antes de una sola palabra tuya — los mensajes del sistema y de identidad añaden unos 24,000 bytes más. Eso es aritmética sobre bytes, no un recuento de tokens del proveedor. El riesgo de errata descrito abajo está confirmado, no inferido: true produjo exactamente la carga off, casi duplicando el prompt de herramientas, sin que apareciera nada en pantalla que lo indicara.

El presupuesto estricto se activó tal como decía la fuente. Se envió al endpoint un mensaje de unos 380,000 caracteres; uno de unos 460,000 caracteres — por encima de 108,000 tokens a cuatro caracteres por token — nunca salió de la máquina. La REPL solo imprimió líneas de registro de advertencia que indicaban la etapa Prompt, el tipo BudgetExceeded y el resumen accepted task exceeds the prompt context token budget. No se encontró ninguna configuración, ni en la configuración ni en el entorno, que moviera ese límite. No se ejecutaron los errores del ámbito de habilidades, el desbordamiento de un modelo real ni ninguna solicitud a través de Kunavo.

Reintentar no es una solución, y una errata lo empeora

La estrategia de recuperación predeterminada reintenta un desbordamiento de contexto exactamente una vez, en el ámbito de la iteración, con una modificación ShrinkContext, y después aborta — los nombres de las pruebas del proveedor son model_context_overflow_compacts_once_then_aborts y second_model_context_overflow_aborts_without_another_compaction. Por tanto, reintentar la misma solicitud sobredimensionada no puede tener éxito. Para ponerlo en contexto, los valores predeterminados de la misma estrategia permiten max_model_availability_attempts: 12 y max_attempts_per_class: 2; esta clase recibe el único intento de ShrinkContext.

La compactación tampoco te salvará antes: su umbral de activación es el mismo 108,000, por lo que nada fuerza una compactación antes de que la transcripción lo alcance. Las compactaciones forzadas y de recuperación eluden el disyuntor, que es la única forma que tiene el bucle de reducir un prompt sobredimensionado antes de reintentarlo. Una salvedad sobre la estrategia alternativa: el issue #5582, abierto desde el 3 de julio de 2026, informa que ActiveTaskPreservingCompactionStrategy nunca lee la bandera de desbordamiento. Aquí no se rastreó qué estrategia selecciona cada implementación.

Conviene comprobar primero un riesgo de configuración. La divulgación progresiva de herramientas se lee de REBORN_TOOL_DISCLOSURE, acepta off | compact | signatures | namespaces | bridged y, cuando no está definida o está vacía, usa namespaces de forma predeterminada. Cualquier valor no vacío distinto — una errata, un true obsoleto o un on obsoleto — se resuelve silenciosamente en Off, documentado en el mismo archivo como «Control arm: advertise every authorized schema». Un valor que no sea UTF-8 hace lo mismo. La única señal es una línea tracing::debug!, y el efecto es un prompt de herramientas considerablemente mayor. Desestablece la variable en lugar de adivinar su ortografía.

Qué puedes cambiar realmente hoy

No existe ninguna página de documentación publicada de IronClaw que cubra el presupuesto de contexto, la compactación o cualquiera de estos cuatro errores, por lo que las palancas siguientes son las que respaldan conjuntamente la documentación y el código — no un remedio avalado por el proveedor.

La única palanca documentada que reduce la presión del contexto de habilidades es una opción de configuración, no una variable de entorno. La página de habilidades de IronClaw indica que debe establecerse en [skills] y señala que la activación por palabras clave y etiquetas, además de las menciones explícitas a $my-skill, sigue inyectando habilidades:

~/.ironclaw/reborn/config.toml
[skills]
# Documented lever: stops regex auto-activation from loading full skill
# context. Keyword/tag activation and $my-skill mentions still inject skills.
regex_activation_enabled = false

Hay tres más, con sus límites indicados. El campo de frontmatter max_context_tokens de una habilidad tiene un valor predeterminado de 2000 según la misma página de documentación, pero escribir allí un número pequeño no reduce una habilidad grande: cuando el cuerpo estima más del doble del valor declarado, el selector registra «using actual estimate» y cobra el tamaño medido. Una rutina reactiva puede limitar su superficie de herramientas mediante allowed_tools, que se aplica a esa rutina y no a los turnos interactivos. Y las herramientas de archivos están desactivadas salvo que se establezca ALLOW_LOCAL_TOOLS=true: la documentación de herramientas de archivos de IronClaw indica que están desactivadas de forma predeterminada «para evitar el acceso accidental al sistema de archivos en entornos alojados o compartidos», así que mantenerlas desactivadas elimina otro conjunto de esquemas del prompt. Ninguna de estas tres afecta a 128,000.

Por último, no planifiques basándote en un número obsoleto. El issue #7485 informó que el presupuesto de 108,000 tokens era «efectivamente ~54k tokens reales» para contenido ASCII y que la compactación se activaba «aproximadamente 2× antes». Eso era un doble recuento en uno de dos estimadores de tokens. El PR #7502 los unificó y se fusionó el 11 de agosto de 2026; la API de comparación de GitHub sitúa el commit de fusión dentro de las etiquetas v1.3.0 y v1.4.0, y dentro de main. Frente a v1.2.0 y v1.1.0, la comparación devuelve «diverged», por lo que no se ha establecido la primera versión que lo contiene — di v1.3.0 y posteriores. El único estimador actual calcula el ASCII a 4 caracteres por token y aproximadamente 1.5 tokens por cada carácter no ASCII de 3 bytes, lo que significa que una transcripción con mucho CJK llena 108,000 mucho más rápido que una en inglés.

Qué cuesta el límite por turno y qué ruta gana

Esto es aritmética de tokens ilustrativa, no un coste medido de tarea ni un límite de facturación. Supón un turno con carga máxima: la transcripción en su límite de 108,000 tokens, 8,000 de identidad, 4,000 de contexto de habilidades (el presupuesto predeterminado del selector; un tiempo de ejecución compuesto que conecte 6,000 lo elevaría) y 3,843 de esquema de herramientas anunciado del benchmark registrado anteriormente — 123,843 tokens de entrada estimados — más 2,000 tokens de salida. Esas son estimaciones propias de IronClaw sobre un fixture sintético, por lo que un tokenizador real del proveedor no coincidirá. Las tarifas son precios actuales del catálogo de Kunavo por millón de tokens.

ModeloEntrada/salida por 1MCoste estimado, un turno completo hasta el límiteAñadido por turno si la divulgación vuelve a Off
Claude Haiku 4.5$0.70 / $3.50$0.094+$0.012
GPT-5.6 Terra$0.70 / $4.20$0.095+$0.012
Claude Sonnet 4.6$2.10 / $10.50$0.281+$0.037
Claude Opus 5$3.50 / $17.50$0.468+$0.061

La última columna es el objetivo de esta sección. Una errata en REBORN_TOOL_DISCLOSURE añade 17,512 tokens de entrada estimados a cada turno — en Claude Sonnet 4.6 eso equivale a $0.037 por turno antes de que cambie cualquier otra cosa, y un agente siempre activo realiza muchos turnos al día. La segunda conclusión es que pagar por un modelo de contexto largo para evitar esto no funciona: IronClaw ensambla hasta su propio número de todos modos, así que la ventana adicional no aporta nada mientras la tarifa más alta se factura sobre los 123,843 tokens. Multiplica por tus propios turnos diarios antes de considerar cualquiera de estas cifras como un presupuesto.

RutaPrecio publicadoCuándo gana
IronClaw autoalojadoSoftware de $0; la insignia del README dice «License: MIT OR Apache-2.0», mientras que el campo de licencia único de la API de GitHub informa Apache-2.0Quieres controlar el endpoint. No se necesita un servidor de base de datos para empezar — la documentación de almacenamiento indica que el estado reside en archivos integrados bajo el perfil local predeterminado, y PostgreSQL es la opción para implementaciones servidas o multiusuario
API directa del proveedorLas tarifas del proveedor por tokenUna sola familia durante todo el día y quieres la caché nativa de ese proveedor
Una puerta de enlace compatible con OpenAILas tarifas del gateway por tokenCambias de familia según la tarea y quieres una sola clave — aceptando que no se anuncia ninguna ventana, lo que es cierto en esta ruta para cualquier gateway
ironclaw.com StarterSe muestra como $5 tachado hasta $0/mes, «$5 en créditos incluidos», 1 instancia de agenteEstás probando la opción alojada. Interprétala como promocional, no como un plan permanente de $0
ironclaw.com Basic$20/mes, «$20 en créditos incluidos», hasta 2 instancias de agente, uso compartido de créditosDos implementaciones que comparten créditos
ironclaw.com Pro+$200/mes, «$200 en créditos incluidos», hasta 5 instancias de agente, acceso anticipado a modelos avanzados, soporte prioritarioEl nivel alojado superior
Modelo localSin cargo por solicitud; se paga el hardwareTrabajo pequeño o privado — pero ten en cuenta que IronClaw seguirá ensamblando 108,000 tokens con una ventana local pequeña

Las líneas de planes alojados se leyeron de ironclaw.com el 21 de septiembre de 2026; ironclaw.com/pricing devuelve HTTP 404, por lo que los planes están en la página de inicio. El encabezado sobre las tres tarjetas dice «Spin up to 5 agents in a Trusted Execution Environment with up to 130M tokens per month» — cinco agentes es el máximo de Pro+, por lo que ese encabezado indica el límite del plan superior y no el de una tarjeta concreta, y la cifra de 130M tokens no aparece en ninguna tarjeta. No se publica a cuántos tokens equivalen los créditos incluidos ni qué ocurre cuando se agotan, y aquí no se hacen suposiciones.

Kunavo no ofrece ningún modelo de embeddings, texto a voz o voz a texto, por lo que cualquier paso de recuperación o voz de tu configuración debe llamar a un proveedor externo.

Pruébalo y luego lee el cargo

Si diriges IronClaw a un gateway compatible con OpenAI, el endpoint de chat-completions de Kunavo tiene el formato que espera el identificador de proveedor openai_compatible. Es una coincidencia de protocolo deducida de la documentación de ambas partes — la ejecución del 1 de octubre indicada arriba usó un servidor de pruebas local, no Kunavo, por lo que Kunavo no afirma compatibilidad. Mantén disponible una ruta funcional, ejecuta una tarea acotada y concilia con el uso registrado por tu cuenta, no con el coste mostrado por IronClaw, que es su propia aritmética. El importe del catálogo de Kunavo es un mínimo de facturación, no un límite: cuando el upstream informa de su cargo, la factura es el mayor entre el coste del catálogo y el coste del upstream multiplicado por el margen aplicable. La recarga mínima es $10 en crédito prepago — un mínimo de financiación, no una tarifa por tarea ni una suscripción; consulta los detalles de facturación y crea una cuenta cuando estés listo para financiar una clave. Para las opciones relacionadas, optimización de costes de IA cubre la medición del coste por tarea completada, y PicoClaw y ZeroClaw cubren dos runtimes hermanos cuya duración del bucle es una palanca de coste del mismo modo.

Preguntas frecuentes

¿Qué significa «context budget exceeded» en IronClaw?

No es un único error. Cuatro variantes de error distintas de Rust en nearai/ironclaw contienen ese texto: «skill context: context budget exceeded» para un fragmento de skill que supera los 64 KiB de contenido del modelo o los 256 KiB en total; «skill context budget exceeded», que se produce con más de 100 candidatos visibles de paquetes de skills y también se usa cuando la capa host vuelve a mapear ese error de bytes; «skill activation context budget exceeded» para más de 8 skills activas en un turno, o para una skill cuyo coste estimado supera el presupuesto de tokens restante del selector —4,000 según el valor predeterminado del propio selector, 6,000 cuando el runtime de composición conecta la fuente de skills del sistema de archivos—; y «identity context budget exceeded», que un comentario del código fuente marca como reservado para un futuro modo de límite estricto porque la vía de identidad trunca silenciosamente en su lugar. Ninguna de las cuatro corresponde a la ventana de contexto del modelo. Leído desde la rama principal en el commit b0b999d el 21 de septiembre de 2026.

¿Cómo aumento el presupuesto de contexto de IronClaw?

No puedes hacerlo sin recompilar. El presupuesto de contexto del prompt es un límite de 128,000 tokens incorporado en la compilación, con una reserva de 20,000 tokens; toda construcción que no sea de prueba en el repositorio usa el valor predeterminado simple, y no existe ninguna clave de configuración, variable de entorno ni opción de CLI para modificarlo. La propia issue #5739 de IronClaw, abierta desde el 6 de julio de 2026, dice lo mismo en su título. Las claves budget.* de la página de configuración son controles de costes monetarios, no tokens de contexto, y la sección de configuración [skills] contiene exactamente un campo en la estructura de configuración de Rust: regex_activation_enabled. El PR #5790, cuyo título promete una sobrescritura del presupuesto de contexto del prompt, se cerró sin fusionarse el 27 de agosto de 2026; citarlo como solución es citar trabajo abandonado. Todos los estados se comprobaron el 21 de septiembre de 2026.

¿Un modelo con una ventana de contexto más grande lo solucionará?

No en un endpoint OpenAI-compatible personalizado. IronClaw dimensiona su prompt a partir de su propio número incorporado en la compilación, no del modelo, y un endpoint genérico nunca le informa de lo contrario: ModelMetadata.context_length es un Option, el valor predeterminado del trait LlmProvider devuelve None con el comentario «Default returns the model name with no size info», y el adaptador genérico compatible con OpenAI no define ninguna sobrescritura, por lo que hereda ese None. Apunta IronClaw a un modelo de un millón de tokens y seguirá planificando 108,000 tokens de transcripción; apúntalo a un modelo local pequeño y ensamblará 108,000 y dejará que el proveedor rechace la solicitud. El PR #8053, que no se ha fusionado, derivaría el presupuesto de la ventana anunciada, exactamente el campo que esta ruta nunca establece. Leído en el commit b0b999d el 21 de septiembre de 2026.

¿Por qué IronClaw descarta mensajes anteriores antes de alcanzar el límite?

Antes del presupuesto de tokens se aplican dos límites. Un límite separado de 128 mensajes se aplica al análisis de la transcripción, por lo que un hilo largo de mensajes cortos puede cortarse por cantidad mientras permanece muy por debajo de la asignación de tokens. Después, la selección de la transcripción recorre los mensajes empezando por los más recientes y se detiene ante el primer mensaje que no cabe, descartando todos los mensajes anteriores en vez de omitir ese mensaje; en la rama principal es una decisión deliberada y documentada, cuyo comentario explica que omitir un mensaje intermedio «puede dejar huérfanas las llamadas a herramientas del proveedor respecto de sus referencias de resultados». La issue #7485 de IronClaw propuso omitirlo; esa propuesta no se adoptó. Leído en el commit b0b999d el 21 de septiembre de 2026.

¿Cambiar SKILLS_MAX_TOKENS modifica el presupuesto de skills?

No, y esta es una contradicción documentada que conviene conocer. La documentación china de skills de IronClaw publica un bloque de código con SKILLS_MAX_TOKENS=4000 y describe la selección de skills hasta agotar ese presupuesto. La página de skills en inglés nunca menciona la variable, y el propio archivo de reglas del repositorio de IronClaw afirma que «la antigua variable de entorno SKILLS_MAX_TOKENS no es leída por nada». Una búsqueda de código de GitHub en todo el repositorio el 21 de septiembre de 2026 devolvió tres archivos: ese archivo de reglas, la página de documentación china y un script interno de animación; ningún archivo Rust. El valor realmente vigente está incorporado en la compilación: DEFAULT_MAX_SKILL_CONTEXT_TOKENS es 4000 como valor predeterminado del selector, y el runtime de composición conecta la fuente de skills del sistema de archivos con 6000. En cualquier caso, solo cambia al recompilar.

¿Reintentar la misma solicitud ayuda?

No. La estrategia de recuperación predeterminada de IronClaw reintenta exactamente una vez un desbordamiento del contexto del modelo, en el ámbito de la iteración, con una alteración ShrinkContext, y se cancela en el segundo intento; los nombres de las propias pruebas del proveedor son model_context_overflow_compacts_once_then_aborts y second_model_context_overflow_aborts_without_another_compaction. Un mensaje de tarea aceptada y fijada que sea mayor que la asignación visible de la transcripción ni siquiera recibe ese tratamiento: falla inmediatamente con otra clase de error que contiene el mensaje «accepted task exceeds the prompt context token budget». Acorta la solicitud o inicia un hilo nuevo, que es lo que te indica la propia frase de error visible para el usuario de IronClaw. Leído en el commit b0b999d el 21 de septiembre de 2026.

Ejecución del 1 de octubre de 2026: el binario publicado ironclaw-v1.4.1 contra un servidor de pruebas local — la tabla de divulgación y la prueba de presupuesto anteriores; los estados de los issues #5739, #8053, #8057, #7976 y #5435 se volvieron a comprobar ese mismo día y todos seguían abiertos. Comprobado el 21 de septiembre de 2026. Las constantes de origen, las cadenas de error, la estrategia de recuperación, el estimador de tokens, los modos de divulgación y la línea base del benchmark se leyeron de nearai/ironclaw main en el commit b0b999d mediante la API de contenidos de GitHub; los estados de issues y pull requests mediante la API de issues de GitHub; las páginas de habilidades, configuración, almacenamiento y herramientas de archivos en docs.ironclaw.com y las tarjetas de planes en ironclaw.com mediante solicitudes directas. La etiqueta de versión v1.4.0 no se comprobó, no se ejecutó ninguna instancia de IronClaw, no se ejecutó ninguna prueba del repositorio, no se reprodujo la activación de ninguno de los cuatro errores y Kunavo no ha probado IronClaw en tiempo de ejecución. Las tarifas de tokens de Kunavo proceden del catálogo actual, y toda cifra en dólares es aritmética ilustrativa de tokens.