Dashboard
@autowright/dashboard is a Next.js (App Router) UI on port 4300 that sits
on top of the service’s read APIs. It holds no state of its own — every page
is rendered server-side from GET /api/stats and GET /api/fixes, so it
shows exactly what the service knows.
npm run dev -w @autowright/dashboard # http://localhost:4300Point it at the service with AUTOWRIGHT_SERVICE_URL (default
http://localhost:4400). If the service is unreachable, the dashboard says so
with an error banner instead of rendering stale numbers.
Overview
The landing page answers “is my fleet healthy?” with six stat cards:
| Card | Meaning |
|---|---|
| Total runs | Registered script runs seen by the service |
| Running | Fix jobs currently in progress |
| Fixed | Confident fixes delivered as PRs |
| Needs attention | Failures with no confident fix — triage + evidence |
| Total cost | Cumulative AI spend across all fix attempts |
| Avg / fix | Average cost per fix, with total agent turns |
Below the cards, a recent-fixes table gives the last activity at a glance.
Fixes list
The fixes page lists every fix attempt with sortable, scannable columns: Status (pill badge — completed, in-progress, failed, pending), Script, Classification, Failed step, When, Turns, Cost, and a link to the detail page.
Fix detail
The detail page is the post-mortem for one incident:
- Failure panel — classification, failed step, page URL, error type, and outcome.
- Cost & effort — dollars, agent turns, wall-clock duration, and input/output/cache token counts.
- Pull request link — with the reminder that matters: verify against the live site before merging.
- Agent summary — the agent’s own explanation of what it found and changed.
- Files changed and the full error message.
- Artifacts — the evidence bundle URL and its contents (see Artifacts).
When to look at it
Slack tells you that something happened; the dashboard tells you what it cost and why. Typical uses:
- Reviewing a “Fix proposed” notification before opening the PR
- Watching spend trends across a fleet of scrapers
- Digging into a “Needs attention” incident with the evidence bundle in hand
The dashboard is part of the self-hosted stack — see Self-Hosting for running it alongside the service and fixer.