Agents do the work, so the record of what they did has to be something an agent can read. Everything here is structured data first: JSON from the CLI, ordered events on a socket, notices that name the command to run. The web app shows the same data.
- The live run view: a run’s events over a WebSocket from the project, with resume by sequence.
- Logs and traces: logs, spans and events stitched by run ID, with secrets redacted before anything is stored.
- Cost and token metrics: cost, tokens, tool calls, success and latency per agent, project, team, pull request and task, reconciled with metered usage.
- Alerts and incidents: spend caps, failing runs, stuck leases and a stale index, sent once per incident to email, Slack and Teams.
- Retention by plan: how long telemetry is kept, and what no purge touches.
- The agent comparison report: the same task given to two agents, side by side, and evals that replay your merged pull requests.
overlane observe status
overlane observe trace --run run-12
overlane observe cost
overlane observe compare --task task-77Command reference: observe status, observe logs, observe trace, observe cost, observe reconcile, observe compare, observe evals, observe alerts and observe retention.
No model in the measuring
Ordering, redaction, totals, reconciliation, alert conditions, the retention cut-off and every score are arithmetic over stored rows. The decision records of the optional decision models appear in overlane observe status as counts by outcome and use, with their mean latency; they are read from where they are already kept, not copied.
Agent use and the override
An agent reports its own events, logs and cost with its token, reads the trace of a failed run, and sets its alert rules. A person can read the same views in the web app, change any rule, and run a purge. Ingest is a write, so a read-only role reads and cannot report.