Loops: automejora y costos
Atlantis no solo ejecuta: aprende y vigila su propio gasto con dos loops complementarios.
El loop de automejora
agent-curator convierte lo vivido en conocimiento editado. Lee cuatro fuentes: la memoria persistente (engram), los Decretos de corridas anteriores, los datos de El Tesoro y el git log. Busca errores repetidos, convenciones sin documentar, conocimiento vencido y ruteo pobre. Su única salida es una rama curator/<fecha> creada a partir de origin/main fresco, con diffs solo en las secciones de Conocimiento afinable de .claude/agents/agent-*.md (y, opcionalmente, las frases de CONFIG.profiles en atlantis.mjs). Nunca mergea: el humano revisa con git diff main..curator/<fecha> y decide. Sin evidencia suficiente, no propone nada.
El Tesoro
El sandbox del Workflow no tiene filesystem y agent() no expone tokens, así que el gasto se mide post-hoc: ledger/ledger.mjs parsea los JSONL que Claude Code escribe en ~/.claude/projects/, aplica la tabla PRICING por modelo y clasifica el gasto por fase del pipeline (Oráculo, Heraldos, Artesanos, Guardianes, Jueces, Decreto). El motor emite la traza [[ATLANTIS_TRACE]] para correlacionar corridas, y --html genera un dashboard offline. Sobre esos datos, agent-treasurer propone ahorros: downgrades de modelo donde no se pierde calidad, cada recomendación con un número que la sostiene.