Consumption & activity

See how much each CLI and model actually consumed on a project — messages, input, output and cache tokens — plus session and agent activity, measured locally with no API call.

The Usage panel answers a question subscriptions make surprisingly hard: what am I actually consuming? It is measured from the transcripts already on your disk — no API call, no network, no LLM involved.

Open a project and press Refresh after running an agent.

Consumption

One row per CLI and model:

Column Meaning
CLI / Model Which agent, which model. Unknown models are labelled rather than dropped
Messages Turns counted for that model
Input / Output Tokens in and out
Cache (r/w) Cache reads and cache writes — usually where the real volume is
Exact / estimated Whether the numbers come from published counts or an estimate

Exact applies to Claude Code, which writes real input/output/cache counts to its transcript. Everything else is estimated, and marked as such.

Antigravity gets special handling: a single session can switch between a Gemini model and a Claude model, which do not cost the same, so the model in use is read from the transcript rather than assumed.

Rate limits

When a provider rate-limits a CLI, the row shows Rate-limited and resets in . The same signal is shown on the session itself in Mission Control, so a session that hits a quota wall is visibly waiting rather than broken.

Activity

The Activity tab counts work rather than tokens, per project:

Column Meaning
Sessions Agent sessions opened
Agents Distinct agents used
Active time Time agents actually spent working

Useful for the question tokens cannot answer: did this project actually move forward this week?

Where the data lives

A dedicated usage.db SQLite file in the config directory, deliberately separate from the memory store so the two never contend for the same write lock and can have different retention.

Next: Savings vs API pricing.

Frequently asked

Does OFM call an API to measure usage?
No. Everything is read from the CLI transcripts already on your disk. Usage tracking is fully local and deterministic, with no LLM call and no network request.
Why are some numbers marked estimated?
Only Claude Code publishes exact per-turn token counts in its transcript. For the other CLIs, OFM estimates from the transcript content and labels the row estimated rather than pretending precision it does not have.

Last updated