AI Model Reviewer

Kimi K3 in OpenCode 1.18.35

skills on · OpenCode 1.18.35 + skills on (54: 33 video + 21 web/Three.js)Kit: 33 video + 21 web/Three.js · 0 of 54 installed skills used in the session

← Open in the gallerySame prompt, all models

Zoom, inline player and more ways to view
Poster frame of Kimi K3's page
Open the original page

The model's own page, run in a sandboxed frame only when you ask (a page that needs its own origin opens in a new tab on a separate demo site). Phones get a full-screen player capped at 1.5x pixel density (2x on larger screens) so it stays smooth; the original page runs uncapped. Tap inside for sound.

OKMarathon resultsn/a effortNeutral harness

Wall time 40m 55sCost $2.67 reported

Review

No verdict yet.

The full review

OK. Finished on its own after 40.9 min.

Scores

AI judge

Not scored

No rubric for this prompt

Visitor votes and reviewer grades are not available yet.

AI judge
AI judge: the test runner (model claude-opus-5-5), scoring by visual review of the 1600 px render against the pre-registered rubric. No AI-judge score exists for this result: there is no rubric for this prompt, so no score is shown and none is made up.
Visitors
Public voting with a blind reveal is coming: you score the output first, then see the other scores.
Reviewer
The reviewer's own grade appears here once it is added.

Scores compare results for the same prompt only. AI-judge boards rank runs within one prompt, equal totals sharing a rank; scores from different prompts are never averaged.

Downloads

Files actually published for this run. Original output, site-made previews and post-run conversions are labelled separately.

The exact prompt

as run, 4,717 characters. Every result for this prompt

Build an interactive race results dashboard for a city marathon from the exact dataset below (CSV: one row per finisher with bib number, running club, gender, age, and cumulative split times at 10 km, 21.1 km, 30 km and the finish, as h:mm:ss). Embed the data in the page verbatim and compute every number from it; do not invent or alter any value.

bib,club,gender,age,split_10k,split_21k,split_30k,finish
101,Trail Foxes,M,42,0:38:49,1:23:18,2:00:42,2:53:35
102,Hill Striders,M,31,0:56:17,2:00:23,2:54:35,4:08:29
103,Trail Foxes,F,32,0:53:48,1:57:22,2:48:26,3:59:47
104,Harbour Harriers,F,34,0:38:43,1:22:03,1:58:26,2:50:16
105,Unattached,M,63,0:49:28,1:47:17,2:35:54,3:41:18
106,Harbour Harriers,F,47,0:43:01,1:33:33,2:15:02,3:10:08
107,Riverside RC,F,46,0:57:12,2:01:54,2:56:06,4:11:08
108,Hill Striders,F,65,0:58:44,2:04:07,2:59:04,4:14:16
109,Trail Foxes,M,23,0:47:00,1:41:05,2:27:59,3:33:42
110,Riverside RC,F,33,0:38:05,1:22:31,1:58:42,2:47:09
111,Hill Striders,F,24,0:49:32,1:46:25,2:33:20,3:36:35
112,Riverside RC,M,31,0:40:53,1:25:55,2:04:02,2:56:05
113,Hill Striders,F,23,0:59:57,2:07:30,3:05:48,4:24:21
114,Hill Striders,F,56,0:43:40,1:31:52,2:12:51,3:08:42
115,Night Owls,F,27,1:04:18,2:16:58,3:17:51,4:43:11
116,Trail Foxes,F,32,0:52:37,1:53:05,2:43:31,3:50:54
117,Riverside RC,F,61,0:58:21,2:06:34,3:03:57,4:21:53
118,Night Owls,M,56,1:09:04,2:29:52,3:35:02,5:03:19
119,Trail Foxes,F,41,0:51:51,1:50:44,2:39:58,3:48:28
120,Trail Foxes,M,46,0:50:39,1:47:19,2:33:58,3:37:12
121,Unattached,F,23,0:43:04,1:31:38,2:12:22,3:09:08
122,Night Owls,M,23,1:02:58,2:15:44,3:15:51,4:35:10
123,Harbour Harriers,M,20,1:00:07,2:08:57,3:05:52,4:23:52
124,Hill Striders,M,43,1:01:59,2:11:47,3:11:33,4:34:11
125,Riverside RC,F,22,0:50:26,1:48:00,2:33:34,3:36:33
126,Trail Foxes,F,39,0:58:33,2:04:49,3:00:44,4:19:12
127,Trail Foxes,M,46,0:54:21,1:56:35,2:45:20,3:52:00
128,Night Owls,F,64,0:45:32,1:37:06,2:21:19,3:22:05
129,Night Owls,M,65,1:11:26,2:30:42,3:41:16,5:16:12
130,Night Owls,M,52,0:49:55,1:45:53,2:31:22,3:31:47
131,Night Owls,M,60,1:03:35,2:15:31,3:13:10,4:33:22
132,Harbour Harriers,F,55,0:48:01,1:42:09,2:27:37,3:29:17
133,Riverside RC,M,43,1:00:00,2:10:39,3:06:46,4:24:18
134,Harbour Harriers,M,65,1:03:38,2:17:14,3:18:32,4:39:33
135,Trail Foxes,M,19,0:41:42,1:29:20,2:09:13,3:04:28
136,Unattached,F,47,1:08:22,2:25:56,3:30:25,4:56:39
137,Hill Striders,F,27,0:48:32,1:43:43,2:29:29,3:34:35
138,Riverside RC,F,35,0:37:55,1:20:58,1:58:03,2:49:59
139,Hill Striders,F,24,1:00:43,2:10:31,3:11:15,4:35:15
140,Harbour Harriers,F,67,0:52:15,1:52:16,2:45:10,3:58:17
141,Riverside RC,F,40,0:43:29,1:32:31,2:14:14,3:11:05
142,Unattached,M,31,0:57:26,2:02:30,2:58:16,4:18:08
143,Unattached,F,30,0:53:17,1:51:21,2:41:12,3:50:40
144,Hill Striders,F,28,0:44:48,1:37:12,2:20:19,3:19:02
145,Trail Foxes,F,34,0:42:36,1:31:24,2:10:59,3:03:51
146,Harbour Harriers,F,56,0:41:36,1:28:29,2:09:20,3:08:14
147,Unattached,F,57,0:52:02,1:49:55,2:40:54,3:53:11
148,Night Owls,F,56,0:45:58,1:36:48,2:18:55,3:15:52

The dashboard needs: a sortable, searchable results table with overall place, gender place, age group (under 30, 30-39, 40-49, 50-59, 60 and over), finish time and average pace per km; KPI cards for finishers, winning time, first woman, median finish time and the number of negative splits (second half faster than the first); a finish-time histogram with five-minute bins; a pace chart showing every runner's pace per segment as faint lines with the selected runner highlighted; a 'race replay' visual where every runner is a dot moving along a stylised course in proportion to their splits, with a time scrubber and leaderboard; club and age-group comparison bars; filters by gender, age group and club that update everything; and hover or tap details for any runner. Make it feel like a premium sports-broadcast graphic. So the page is alive without input, on load it plays the race replay from the gun to the last finisher on a loop with the leaderboard updating, then highlights the winner, the first woman and the runner with the strongest negative split in turn, forever, until the user touches a control.

Save it as index.html in the current directory: one self-contained file with inline CSS and JavaScript only, no libraries or frameworks, and no external requests of any kind (no CDNs, web fonts, images or audio files). It must work when opened directly from disk, fit any window from a 390 px wide phone to a desktop, and run without console errors. You may serve it locally and open it in headless chromium (/usr/bin/chromium, software WebGL, no GPU) to screenshot and inspect your own output, and iterate on your own before finishing. Close any browser you open as soon as you've taken your screenshot.

How it was made

Wall time 40m 55sFirst artifact at 27m 55s

Step by step

The prompt, every agent turn and tool call (tool name and a one-line summary; inputs and outputs are not shown), then the final message. The full transcript is 9.1 MB; it is published as a scrubbed, compressed download rather than shown on the page.

Show all 95 steps

Loading the timeline…

Download the full transcript OpenCode session export, 104 KB, gzip. Scrubbed: anything that looks like a key, token, e-mail address or phone number is replaced, and account details and the test machine's file paths are removed.

Cost breakdown

Headline cost $2.67, as reported by OpenCode (its own bill for the run). The list-price estimate from the token counts is $2.67.

Tokens by typeTokens$ per 1MCost
Input (uncached)246,569$3.00$0.7397
Cache write0$3.00$0
Cache read2,809,989$0.30$0.8430
Output72,452$15.00$1.0868
of which reasoning39,680billed as output
Total computed from tokens
$2.6695
Total reported by the harness
$2.6695
Difference
matches

OpenCode 1.18.35 reported its own total; token counts x list prices shown beside it. The harness reports reasoning tokens separately from output; here output includes them (32,772 visible + 39,680 reasoning), and both bill at the output rate.

Prices: https://platform.kimi.ai/docs/pricing/chat, 2026-09-24.

Run notes

one prompt, agentic harness (self-review allowed)skills=on

  • frozen prompt (written): core requirements sha256 f36bb470273a, full harness prompt sha256 f36bb470273a; exact prompt text used by the existing harness rows of this test on the runs branch (copied from dash_marathon_results__claude-code__opus-5-5-high__attempt1/meta.json, sha256 verified); Beta half of t
  • no TUI: the harness ran in its non-interactive mode, so there are no TUI screenshots; the timelapse is built from version renders only
  • OpenCode config (providers only, permission allow-all except question; no agents/instructions) + both default skill kits in xdg/config/opencode/skill (skills=on)
  • infra retries: 0
  • in the published transcript the sandbox HOME directory is shown as <HOME>
  • skills=on: 54 skills installed in the harness skill directory before launch (video-33 remotion-dev/skills + heygen-com/hyperframes@0b5db9da + f; web-threejs-21 [redacted]/ai-AI Model Reviewer skills/ (alpha/mr-homebar)@7521074d98c9).
  • Mode: headless run mode (opencode run --format json), inside bubblewrap sandbox
  • Isolation audit: none
  • Renderer: inline SVG (course map, replay and charts are hand-built SVG written by the page's own script); no chart library, no canvas, nothing loaded from a CDN (single self-contained file).
  • Card video: none (the run has no H.264 yuv420p video.mp4 with 30+ frames under 24 MB). Poster: a headless-Chromium screenshot of the run's own index.html taken at import (the run folder has no render.png).
  • Skills on: the run had 54 skills installed (33 video + 21 web/Three.js), as its meta records.
  • Kimi K3 served via Fireworks (OpenCode provider fireworks-ai).
  • Same frozen prompt as the other rows on this test; configurations differ and all rows are unscored, so this is not a head-to-head result.