Skip to content

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.

Terminal window
npm run dev -w @autowright/dashboard # http://localhost:4300

Point 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:

CardMeaning
Total runsRegistered script runs seen by the service
RunningFix jobs currently in progress
FixedConfident fixes delivered as PRs
Needs attentionFailures with no confident fix — triage + evidence
Total costCumulative AI spend across all fix attempts
Avg / fixAverage 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 panelclassification, 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.