About the process
How five open agentic coding harnesses, one model served by MindRouter, and one set of rules produced the twenty apps in the gallery.
The method, in plain language
Who wrote the apps. The application code of every app (src/, scripts/, data/embed/) was committed only in recorded rounds of one of five open agentic coding harnesses. Every model call those harnesses made went to MindRouter: default-agent (qwen/qwen3.8-27b), plus short session-title calls by OpenCode to default-agent-small (qwen/qwen3.6-35b).
The model. Every harness ran on default-agent, which resolves to qwen/qwen3.8-27b, served by MindRouter, the University of Idaho's on-premises AI platform.
Who reviewed. A separate AI reviewer (Anthropic's Claude, via Claude Code — not running on MindRouter) wrote each specification, the shared University of Idaho brand template (header, footer, font, logo) and the small build script that assembles each app, downloaded and documented the public raw data, ran each harness round, tested the result in a real browser, and wrote FEEDBACK.md for the next round. It never edited application code directly: a runner refused to start a round if app code had changed outside a harness round, and every round is a separate git commit.
Who judged. An independent Claude critic then used each app with fresh eyes, spot-checked displayed numbers against the raw data, audited the git history, scored it, and could drive a few more harness rounds.
One build, in six steps
- SpecificationThe reviewer writes the spec the harness receives.
- Harness roundThe agent builds and commits the app code.
- Browser testThe reviewer runs and tests the result in a real browser.
- FEEDBACK.mdFindings and fixes, written for the next round.
- Next roundThe harness receives the feedback in its next recorded round.
- CriticAn independent critic uses, spot-checks and scores the app.
The five harnesses
| Harness | Version | Official site | Rounds | Hours | Apps it built |
|---|---|---|---|---|---|
| Codex CLI | 0.154.0 | github.com/openai/codex | 50 | 10.8 | |
| Goose | 1.50.0 | github.com/aaif-goose/goose · goose-docs.ai | 69 | 10.5 | |
| OpenCode | 1.18.21 | opencode.ai | 62 | 9.7 | |
| Pi | 0.84.4 | pi.dev | 98 | 16.9 | |
| ForgeCode | 2.13.21 | forgecode.dev · github.com/antinomyhq/forge | 56 | 7.9 |
Authorship audit ✎ audit written by the AI critic
An authorship audit (2026-09-13) confirmed that no app code was committed outside a harness round and no non-MindRouter model was used, and found three caveats: the reviewer's brand template is about 46 KB of every app file; some of the reviewer's feedback included short code, markup or CSS snippets that the harnesses adopted verbatim (about 6 KB across 16 apps, under 1% of the application code — the reviewer's feedback is shown round by round on each app's page); and two apps display reference values the reviewer computed (Study Power Lab's validation table and Virtual Titration Lab's solver check). Later rounds were required to use prose-only feedback.
The rules every app followed
- Single self-contained HTML file per app
- No network requests
- University of Idaho brand kit
- Sources cited in-app
- Synthetic data labeled
Totals
- Apps
- 20
- Harness rounds
- 335
- Hours of harness work
- 55.9
- Lines of app JavaScript
- 35,123
Figures are computed from data/raw/gallery.json — the same data that powers the rest of this site. Reviewer- and critic-written text (blurbs, feedback, notes) is labeled as such wherever it appears.