Single-binary, aggregate-only token usage telemetry for local AI coding agents. Runs on hardware you control. Exposed only on your tailnet.
what the server stores
| field | type | stored |
|---|---|---|
| device | name, chosen at pairing | yes |
| project | name | yes |
| agent | enum: codex, claude, pi, factory, cursor | yes |
| model | name | yes |
| quality | enum: exact, estimated-time, lower-bound | yes |
| hour | UTC hour bucket | yes |
| input_tokens | counter | yes |
| output_tokens | counter | yes |
| reasoning_tokens | counter | yes |
| cache_read_tokens | counter | yes |
| cache_write_tokens | counter | yes |
| session_starts | counter | yes |
never stored, at any layer
- prompts
- transcript content
- file paths
- session or event identifiers
Raw events stay on the device, in the collector's local ledger. The server never receives them.
install
curl -fsSL https://tokens.col-agents.com/install.sh | sh
host / node
host
Runs the server on one machine. Binds 127.0.0.1. Exposed via
Tailscale Serve — no Funnel, no public port. --lan binds
the local network directly instead, no tailnet required.
node
Pairs to a host with a browser-approved code. Collects and reports on a 5-minute interval.
adapters
| agent | quality |
|---|---|
| codex | exact |
| claude code | exact |
| pi | exact |
| factory / droid | estimated-time |
| cursor | lower-bound |
agent prompt
Setup instructions for an agent running on the target machine: /prompt
curl -fsSL https://tokens.col-agents.com/prompt
platforms
- linux-amd64
- linux-arm64
- darwin-arm64
- darwin-amd64