coder-eval writes results as JSON, markdown, and logs under runs/. evalboard
is a small local web UI that renders those runs — pass rates, per-task detail,
tool and message timelines, artifact downloads — so you can explore a run in a
browser instead of reading raw files. It reads straight from your filesystem: no
database, no backend, nothing leaves your machine.
- A completed run (do Tutorial 01 first — you need a
runs/<timestamp>/directory with arun.json). - Node.js 20+ and pnpm. The repo pins pnpm via
packageManager, so the simplest way is Corepack:corepack enable # provides the pinned pnpm
cd evalboard
pnpm install# Use coder_eval's own ./runs directory (shortcut):
pnpm dev:local
# ...or point at any runs directory (absolute path):
EVALBOARD_LOCAL_RUNS_DIR=/absolute/path/to/runs pnpm devThen open http://localhost:3030.
Only directories that contain a
run.jsonappear in the index — empty shells and thelatestsymlink are filtered out. If your run list is empty, confirm the run actually completed and thatEVALBOARD_LOCAL_RUNS_DIRpoints at the parentruns/folder (not a single run).
| Page | What it shows |
|---|---|
/ |
The 20 most recent runs, one clickable row each |
/runs/latest |
Redirects to the newest run |
/runs/<run-id> |
Run summary — pass rate, cost, duration — plus one row per task (green = pass, red = fail). "Download run (.zip)" bundles the whole folder |
/runs/<run-id>/<task-id> |
Per-task detail: success-criteria cards, the tool timeline, the message timeline (per-message tokens, expandable into thinking/tool/text), artifact downloads, and the tail of task.log |
/trends |
Per-task pass rate and average duration/cost/turns across recent runs |
<task-id> matches the task_id in the results and the subdirectory name under
<run-id>/<variant>/ — the same layout described in the
Output Structure reference.
- Filesystem-only in local mode. Setting
EVALBOARD_LOCAL_RUNS_DIRmakes evalboard read runs from that directory and never reach out to any remote storage. - OSS edition by default. evalboard runs in its open-source edition with no
configuration; UiPath-internal surfaces are opt-in via
EVALBOARD_EDITION=internal. - No database. Run listings and detail pages are rendered on the fly from the files coder_eval already wrote.
- Produce more runs to compare → A/B Experiments
- Automate runs in CI, then download the artifact and open it here → Running coder_eval in CI