The JSONL audit log captures every routing decision (task, model,
cost, redactions, verdict) but it's only useful if someone opens it.
Teams want to push this into Grafana, a spreadsheet, or their finops
dashboard.
What to do
Option A (simplest, ship first): a new CLI subcommand
token-proctor-mcp --export-csv <out> that reads the JSONL file and
emits a CSV with columns:
timestamp,user,task,model,tier,inputTokens,outputTokens,turns,costUsd,planBurnPct,redactions,verdict.
Option B (nice to have): emit OpenTelemetry spans or Prometheus
gauges so the audit log can feed a real dashboard. Start simple;
this can be a follow-up issue.
Acceptance
Why this matters
This is the feature team leads ask for after two weeks of use:
"cool, but how do I show my manager we saved money?" Without an
export path, the audit log is write-only.
The JSONL audit log captures every routing decision (task, model,
cost, redactions, verdict) but it's only useful if someone opens it.
Teams want to push this into Grafana, a spreadsheet, or their finops
dashboard.
What to do
Option A (simplest, ship first): a new CLI subcommand
token-proctor-mcp --export-csv <out>that reads the JSONL file andemits a CSV with columns:
timestamp,user,task,model,tier,inputTokens,outputTokens,turns,costUsd,planBurnPct,redactions,verdict.Option B (nice to have): emit OpenTelemetry spans or Prometheus
gauges so the audit log can feed a real dashboard. Start simple;
this can be a follow-up issue.
Acceptance
node out/mcp-server.js --export-csv out.csvproduces a validCSV from the current
.token-proctor/audit.jsonl.fs+ stringjoining is enough).
Why this matters
This is the feature team leads ask for after two weeks of use:
"cool, but how do I show my manager we saved money?" Without an
export path, the audit log is write-only.