AI Observatory

Open source · Runs on your machine

Know what to change

Your coding agent already logs every turn. This reads those logs and tells you the few changes worth making — each with a number attached.

# 60 days of sample data, then the real dashboard
$ git clone https://github.com/jxxyx-bloop/ai-observatory
$ cd ai-observatory/observatory
$ python3 observe.py demo digest report

Python 3 standard library. No install, no dependencies, no build step.

The output

Not a number. A next move

HighYou're paying peak rates you didn't have to≈ $34/mo

61% of your spend on time-priced models landed inside a peak window, where the same tokens cost up to twice as much.

Queue the work that doesn't need watching — tests, migrations, doc sweeps — for an off-peak hour.

MediumContext is being rebuilt, not reused≈ $61/mo

Cache reuse sits at 38%. Rebuilding context costs roughly 12× what reading it back does.

Keep one session across related tasks instead of restarting. This gap is worth more than any model swap.

LowYour $18 plan returned 23× what you paid23× return

Metered, the same work would have cost $412. Nothing here needs fixing.

Stay on the plan. Revisit if your monthly turns drop below 400.

Fifteen checks. Anything worth under $15 a month is demoted, so the top of the list always means something — and healthy usage is reported as healthy.

How it works

Three steps, about a second

  1. Read

    Your agent already wrote the logs. We read those files where they are — nothing to install, nothing to switch on.

  2. Measure

    Tokens, cache, timing and cost — priced at the rate that was actually in force when the work ran.

  3. Act

    A ranked list of changes, each with its evidence and what it is worth per month.

No API key, no proxy, no account, no network. Collection costs zero tokens.

Why it's different

Priced the way you actually pay

The clock changes the price

DeepSeek and GLM charge by the hour. From UTC+7 to +9, their peak window is your working afternoon.

A plan is not a bill

On an $18 plan, “you spent $412” is fiction. “23× return” isn't.

Cache rates differ by vendor

The 0.1× discount is an Anthropic habit, not a law. Get it wrong and you misprice the biggest number on the page.

Thirteen currencies

IDR, VND, THB, PHP, MYR and more — set against a local day rate, because $412 does not mean one thing everywhere.

Every figure here is public API list price — the ceiling. Enterprise contracts and monthly plans cost less.

Privacy

Private by construction

Nothing leaves your machine unless you edit a file to say so.

Staying current

It tells you when it has gone stale

The dashboard is a file, not a server. The renderer stamps when it ran, and the page does the subtraction itself — offline, with nothing to check in with.

Under a day

Nothing. A banner that is always on is a banner nobody reads.

After a day

Says when it was last built, and that newer sessions are not in these numbers yet.

After a week

Says plainly that it is out of date, with the refresh command on a copy button.

Sample data always says so, however freshly it was rendered.

One command, about a minute

One line. It checks your setup, reads what your coding agents already wrote on this disk, builds your dashboard, puts an icon in your Dock and opens it.

git clone https://github.com/jxxyx-bloop/ai-observatory.git && cd ai-observatory/observatory && python3 observe.py setup

What that command does, step by step →

Something did not work
“python3: command not found”
macOS and Linux ship Python 3 already, so this is almost always Windows. Install it from python.org and tick “Add Python to PATH” during setup, then use python instead of python3.
“sync: 0 new events from 0 sources”
No supported tool has run on this machine yet, or its transcripts live somewhere non-standard. This is expected on a fresh laptop — the sample data in step 1 still shows the whole product.
The page says there is no digest yet
Collection and rendering are separate steps. Run python3 observe.py digest report, or just python3 observe.py all, which does every step in order.
Nothing opened in my browser
The file is still there — open dist/observatory.html from the project folder. Scheduled runs never open a browser on purpose, so a morning refresh cannot steal focus while you work.
macOS says the app is from an unidentified developer
That warning belongs to downloaded apps. The launcher is generated on your own machine, so it should never appear — if it does, the app was copied from another computer. Delete it and run python3 observe.py install again to build a local one.

Still stuck? Run python3 observe.py doctor — it checks every step and prints the exact fix for whichever one failed.