# Cost Burn > Tendencia de la tasa de gasto en el tiempo, con código de alerta opcional por deriva. Agrupa el gasto por sesión en buckets, muestra el delta entre ventanas y puede fallar si el último bucket supera la media previa en un %. Fuente: https://skillsagentes.com/skills/ruvnet/ruflo/cost-burn Markdown: https://skillsagentes.com/skills/ruvnet/ruflo/cost-burn.md Repositorio: https://github.com/ruvnet/ruflo Autor: ruvnet Licencia: MIT Actualizado: hace 2 meses Coste de contexto: 73 tok instalada, 829 tok al activarse, 829 tok con todos los archivos del bundle Bundle: 1 archivo, 3 KB Permisos que pide: bash ## Instalación Un skill son archivos markdown: los mismos archivos valen para cualquier agente y lo único que cambia es el directorio de destino, es decir la bandera `--agent`. Añade `-g` para instalarlo en todos los proyectos de la máquina. ```bash # Claude Code npx -y skills add ruvnet/ruflo --skill cost-burn --agent claude-code # Cursor npx -y skills add ruvnet/ruflo --skill cost-burn --agent cursor # Codex npx -y skills add ruvnet/ruflo --skill cost-burn --agent codex # Gemini CLI npx -y skills add ruvnet/ruflo --skill cost-burn --agent gemini # Windsurf npx -y skills add ruvnet/ruflo --skill cost-burn --agent windsurf # Cline npx -y skills add ruvnet/ruflo --skill cost-burn --agent cline ``` ## Qué hace - Agrupa el gasto por sesión en ventanas de tiempo (por defecto 1 día, últimos 14 días) y calcula la diferencia entre el último bucket y la media previa. - Puede salir con código 1 cuando el último bucket supera la media previa en un porcentaje configurable, para gatear CI. - Distingue de `cost-trend` (que mide deriva de benchmark) porque este mide la trayectoria del gasto en PRODUCCIÓN. ## Cuándo usarla - Para saber si el gasto diario se está ACELERANDO, no solo si cruzó un umbral. - En CI, para fallar el build si el gasto de hoy aceleró más de un X% sobre la media semanal. ## Qué la activa - "¿Está acelerando el gasto diario?" - "Compara el gasto de hoy contra la media de los últimos 14 días" - "Alerta si el gasto se disparó más del 100% esta semana" ## Antes de instalar - Lee los registros `session-*` del namespace `cost-tracking`. - runs shell commands ## Archivos - SKILL.md — 3 KB ## SKILL.md Reproducido tal cual desde ruvnet/ruflo bajo MIT. Esta sección es el documento original y está en inglés. Burn-rate trend observability. The fourth leg of the cost-tracker forward-cost stack: | Question | Skill | |---|---| | "Have we crossed a threshold?" (reactive) | `cost-budget-check` | | "When will we cross a threshold?" (predictive) | `cost-projection` | | "Could we have spent less?" (comparative) | `cost-counterfactual` | | "Is daily burn ACCELERATING?" (trend) | **`cost-burn`** ← this | ## Algorithm Implementation: [`scripts/burn.mjs`](../../scripts/burn.mjs). 1. Read all `session-*` records from `cost-tracking` namespace. 2. Bin into `--bucket` duration windows (default `1d`) over `--lookback` (default `14d`). 3. For each bucket: `{n: sessions, spendUsd: sum(total_cost_usd)}`. 4. Compute `delta = latest.spendUsd - mean(prior non-empty buckets)`. 5. If `--alert-on-acceleration-pct N` is set: exit 1 when `deltaPct > N`. ## Smoke transcript (5 days @ $0.10/day, today $0.50 — 400% acceleration) ``` | Latest bucket spend | $0.500000 (1 sessions) | | Prior bucket mean | $0.100000 (4 non-empty buckets) | | **Delta (latest vs prior mean)** | **+$0.400000 (400.00%)** | # | Window | Sessions | Spend 0 | 2026-06-15 14:16 → 2026-06-16 14:16 | 1 | $0.500000 1 | 2026-06-14 14:16 → 2026-06-15 14:16 | 0 | $0.000000 2 | 2026-06-13 14:16 → 2026-06-14 14:16 | 1 | $0.100000 3 | 2026-06-12 14:16 → 2026-06-13 14:16 | 1 | $0.100000 ... ``` ## Drift alert exit code $ cost burn --bucket 1d --lookback 7d --alert-on-acceleration-pct 50 ⚠ ALERT: latest bucket $0.500000 is 400.0% above prior mean $0.100000 (threshold +50%) exit 1 $ cost burn --bucket 1d --lookback 7d --alert-on-acceleration-pct 500 ✓ latest bucket within +500% of prior mean (actual delta: 400.0%) — OK exit 0 ## CI integration ```bash # Fail the build if today's spend accelerated > 100% over the weekly mean cost burn --bucket 1d --lookback 7d --alert-on-acceleration-pct 100 || alert-oncall ``` The alert is independent of budget — it triggers on rate ACCELERATION even when total spend is well under budget. Catches "we shipped a hot loop that burns 10× normal" before the budget alarm goes off. ## Distinct from `cost-trend` | Skill | Data source | Question | |---|---|---| | `cost-trend` | `docs/benchmarks/runs/*.json` | "Is the benchmark drifting (win rate, latency)?" | | `cost-burn` | `cost-tracking` namespace | "Is production spend accelerating?" | Both useful; they answer different questions on different data. ## Edge cases - Sparse history (no prior non-empty buckets): alert is SKIPPED with a reason string, exit 0. Operators don't get spurious alerts on cold-start. - Prior buckets all $0 but latest > $0: delta is `Infinity`/`null` in JSON, marked `new` in the table. No alert fires (no baseline to compare against). - `--bucket` > `--lookback`: hard error, exit 2. ## Dónde encaja - Categoría: [Datos y analítica](https://skillsagentes.com/categorias/datos-analitica.md) — Consulta, limpia y visualiza datos sin salir del agente. - Creador: [ruvnet](https://skillsagentes.com/creators/ruvnet.md) — 275 skills en el directorio - [Todas las skills](https://skillsagentes.com/skills.md) - [Ranking de instalaciones](https://skillsagentes.com/ranking.md) ## Otras skills del mismo repositorio - [Harness Gepa](https://skillsagentes.com/skills/ruvnet/ruflo/harness-gepa.md): Inspecciona y audita genomas GEPA: carga y valida un genoma, renderiza el system prompt que compila, o clasifica los modos de fallo de una transcripción de ejecución. - [Deepseek Reason](https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-reason.md): Completion en modo razonamiento contra deepseek-reasoner (R1) de DeepSeek. Devuelve el chain-of-thought por separado de la respuesta final. Lee DEEPSEEK_API_KEY y degrada si falta o la API no responde. - [Deepseek Chat](https://skillsagentes.com/skills/ruvnet/ruflo/deepseek-chat.md): Completion de un solo turno contra el modelo deepseek-chat de DeepSeek vía /v1/chat/completions. Lee DEEPSEEK_API_KEY y degrada con status:degraded si falta o la API no responde. Para tareas sin razonamiento. - [Adr Index](https://skillsagentes.com/skills/ruvnet/ruflo/adr-index.md): Construye o reconstruye el índice de ADRs y su grafo de dependencias ejecutando scripts/import.mjs, en vez de cientos de llamadas MCP. - [Agntcy Status](https://skillsagentes.com/skills/ruvnet/ruflo/agntcy-status.md): Muestra el estado de la integración AGNTCY/SLIM/CASA: si los paquetes están instalados, qué transporte está activo y si el enforcement de CASA está habilitado. --- Skills Agentes · [Índice de páginas en markdown](https://skillsagentes.com/sitemap.md) · [Inicio](https://skillsagentes.com/index.md)