Local Dashboard
Every CodeLoop run produces structured artifacts — logs, screenshots, videos, interaction frames, gate scores, design-compare diffs. The local dashboard is a small Next-based web UI that lets you browse them at http://localhost:3737.
Start the dashboard
# in any CodeLoop-initialized project
npx codeloop dashboard
# Open http://localhost:3737The dashboard reads artifacts/runs/<run_id>/ directly — there is no server-side database, no auth, and no telemetry. It is safe to run on a developer laptop, in CI logs, or behind a VPN.
What you can see
- Run list — every
codeloop_verifyrun with timestamp, scope, pass / fail counts, and confidence. - Run detail — full
RunArtifactJSON, log stream, gate breakdown, screenshots grouped by viewport. - Visual review — side-by-side current vs. baseline screenshots with the pixelmatch diff overlay.
- Design compare — Figma reference next to the actual screenshot, sorted worst-to-best by score.
- Interaction replay — the recorded video plus the 15 extracted key frames with timestamps and correlated app log lines.
Share with the team
# Tunnel localhost:3737 over Cloudflare Tunnel and print a public URL
npx codeloop dashboard --share--share spawns a temporary cloudflared tunnel so reviewers can open the dashboard from a browser without installing anything. The tunnel terminates when you stop the dashboard.
Self-host the dashboard
If you want a permanent dashboard for a team, run it next to the API via Docker Compose. See Self-host runbook.
Troubleshooting
- Port already in use? Pass
--port 4000or setDASHBOARD_PORT=4000. - No runs visible? Make sure you ran
npx codeloop verifyin the project at least once and thatartifacts/runs/exists. - Running inside CI / a remote host? Use
--shareor set up the dashboard via Docker Compose so it's reachable on a real URL.
Keyboard shortcuts
| Shortcut | Action |
|---|---|
g then r | Jump to runs list |
g then v | Jump to visual review tab |
g then i | Jump to interactions tab |
j / k | Next / previous run in the list |
? | Show full shortcut reference |
Run JSON shape
The dashboard reads artifacts/runs/<run_id>/manifest.json as its top-level entry point. The shape is documented under Core concepts » Artifact; packages/shared/src/run-artifact.ts is the canonical TypeScript definition. Anything you can do in the UI you can do directly against this file.
Sharing modes
- Local only — default. Bound to
127.0.0.1:3737; nothing leaves the machine. - Cloudflare tunnel —
--sharespawns a temporary public URL. Tunnel terminates when you stop the dashboard. - LAN — pass
--host 0.0.0.0to expose the dashboard to your local network (no auth; pair with a corporate VPN). - Permanent multi-user— run the dashboard via Docker Compose alongside the API. See Self-host runbook.