TALLYGRAPHUNIFIED SPEND CONSOLE

Referencia del CLI

Comandos, flags, variables de entorno y códigos de salida del CLI tallygraph.

Corre cualquier comando con npx --yes tallygraph, o instálalo global con npm i -g tallygraph. tallygraph help imprime la lista completa.

Uso

ComandoQué hace
collect --token TDescubre agentes locales, encola su uso y lo sube.
collect --watchLo mismo, repetido cada --interval segundos (900 por defecto).
collect --dry-runSolo valida. Sin red y sin escribir en el spool.
read [fuente]Imprime eventos como líneas JSON. Nunca manda nada.
collect --file events.jsonlSube eventos que generaste tú (usa - para stdin).
service install | status | uninstallAdministra el servicio en segundo plano.
tap [-- cliente]Proxy local que anota el uso de la API en vivo.
agent --team T -- claude [args]Corre un cliente contra tu gateway con una llave emitida; las credenciales de proveedor de la shell no se pasan.
security enroll | collect | status | disableReportes opcionales de seguridad de sesiones. Ver Seguridad de sesiones.
Un collect exitoso también publica un reporte de runtimes: un id de instalación aleatorio guardado en TALLYGRAPH_STATE_DIR/install-id, más las versiones del CLI, de Node y de los CLIs de los agentes del batch. Alimenta los findings sobre runtimes viejos. Si falla avisa y sigue saliendo con 0.

Consultar tus datos

Estos comandos usan un token de lectura, que también se crea en Conectores. Responden en el idioma de la terminal (de LC_ALL o LANG) cuando hay traducción.

ComandoQué hace
spend [--days N] [--json]Gasto del workspace por servicio.
findings [--json]Hallazgos abiertos con ahorro estimado.
guard activity [--days N] [--json]Bloqueos de Guard, salud y contadores de privacidad (pide token de lectura de owner).
mcpServidor MCP de solo lectura por stdio con get_spend, get_findings y get_guard_activity.

Auditorías sin conexión

Estos nunca suben nada.

ComandoQué hace
scan [--staged | --all]Busca secretos en archivos staged o versionados. Sirve como hook de pre-commit.
exposureSecretos que tus agentes mandaron a proveedores en los últimos 30 días.
trifectaSesiones que juntaron datos privados, contenido no confiable y una vía de salida.
navwasteCómo se reparten las sesiones de Claude entre navegar, editar y ejecutar.

Variables de entorno

VariablePara qué
TALLYGRAPH_WRITE_TOKENToken de escritura para collect y tap, en vez de --token.
TALLYGRAPH_READ_TOKENToken de lectura para spend, findings y mcp.
TALLYGRAPH_ENDPOINTURL propia de ingesta o de la app. Por defecto www.tallygraph.dev.
TALLYGRAPH_STATE_DIRUbicación del spool. Por defecto ~/.tallygraph.

Códigos de salida de collect

CódigoSignificado
0Todo entregado.
1Error inesperado.
2La API rechazó el request. Las filas siguen en el spool.
3No se pudo abrir el spool o está lleno.
4Token inválido, revocado o vencido. Las filas siguen en el spool.
5Se agotaron los reintentos. Las filas siguen; vuelve a correr para continuar.

Mandar tus propios eventos

Cualquier cosa que escriba líneas JSON puede reportar uso. Cada línea es un evento; los external_id repetidos se ignoran, así que puedes reenviar sin miedo.

events.jsonl
{"external_id":"run-42-call-1","service_slug":"anthropic","model":"claude-sonnet-5-5","input_tokens":1200,"output_tokens":340,"occurred_at":"2026-11-02T18:00:00Z"}
terminal
tallygraph collect --file events.jsonl --dry-run   # revisa primero
tallygraph collect --file events.jsonl --token tg_xxxxxxxx