
Claude Opus 5.5 Animated a Kākāpō Party in One HTML File: What the Demo Actually Ships
- typesafeNEWTypeSafe: Jev 1.132026-09-24$0.04 / $0.00 per 1M tokens · 578 tok/s
- openaiNEWOpenAI: GPT-6 Luna2026-09-2237Intelligence
- openaiNEWOpenAI: GPT-6 Sol2026-09-2248Intelligence
- anthropicNEWAnthropic: Claude Opus 5.52026-09-2258Intelligence
- grokNEWGrok 4.72026-09-2146Intelligence
- OrcaNEWOrca: OrcaCyber Zero 1.02026-09-17$3.00 / $5.00 per 1M tokens · 182 tok/s
- orcaNEWOrca: OrcaVerify Text 1.02026-09-16$2.00 / $0.00 per 1M tokens · 1312 tok/s
- deepseekDeepSeek: DeepSeek V4.1 Flash2026-09-1040Intelligence
- openaiOpenAI: GPT-6 Astra2026-09-0453Intelligence77Coding
- googleGoogle: Gemini 3.8 Flash2026-09-0241Intelligence76Coding
- qwenQwen: Qwen3.8 Max (0902)2026-09-0245Intelligence76Coding
- anthropicAnthropic: Claude Fable 5.12026-09-0153Intelligence82Coding
- AlibabaQwen: Qwen3.8 Flash2026-08-26$0.15 / $0.47 per 1M tokens · 114 tok/s
- z-aiZ.ai: GLM 5.3 Flash2026-08-2642Intelligence72Coding
- DeepSeekDeepSeek: DeepSeek V4 Flash Vision (Exp)2026-08-21$0.22 / $0.66 per 1M tokens · 225 tok/s
- z-aiZ.ai: GLM 5.32026-08-1845Intelligence75Coding
- obsidianQwen3.8 27B2026-08-1534Intelligence68Coding
- deepseekDeepSeek: DeepSeek V4 Pro 08132026-08-1236Intelligence69Coding
- grokSpaceXAI: Grok 4.62026-08-1244Intelligence77Coding
- metaMeta: Muse Spark 1.22026-08-0540Intelligence72Coding
A closing keynote slide is an odd place to find a model test, but that is where this one landed. On 25 September 2026, Simon Willison closed the WeAreDevelopers World Congress North America with a fifteen-second video of two dozen pixel-art kākāpō bouncing under falling confetti — and the video is not the interesting part. The interesting part is what Claude Opus 5.5 was asked to make and what it handed back: not footage, not an image sequence, but one HTML file of 45,880 bytes containing no pictures, no video, and no network calls. Claude Opus 5.5 shipped on 22 September 2026 at $4 per million input tokens and $20 per million output, and this is what the model does when you give it three parrot photos and ask for a party.
Both halves of the claim are published, which is the only reason it is worth a post. The artifact itself sits at tools.simonwillison.net/kakapo-party, and the session that turned it into an MP4 was written up with its full transcript and the Playwright script it used. So this is checkable in a way most "look what the model made" posts are not — while still being one practitioner's afternoon rather than a benchmark. Anthropic has published nothing about it, and no independent score is attached to it anywhere.
What the artifact actually is
Read the page's source and the shape of the thing becomes clear. There is exactly one <canvas> element and one 2D context. There are no <img>, <video> or <audio> tags, no fetch, no XHR, no WebSocket, no CDN link, no web font, nothing written to localStorage or cookies. The file renders identically from a downloaded file:// path with the network unplugged — which is precisely why a local recorder could capture it.
The art is where the work hides. Every sprite is stored as an array of character strings and painted letter by letter through a palette map, so an outline is a K, a body green is a G, and a highlight is an L. The bird comes in 6 colour variants — three body greens crossed with two face and foot palettes — times 5 animation frames, so 30 small offscreen canvases are built before anything moves. The crowd is procedurally placed in staggered rows with the guarantee, in the source, that at least 22 birds end up on screen. The prompt asked for "at least 20 of them".
The props are built the same way: 6 balloon colours, 6 bunting colours, 5 bulb colours on the light string, a disco ball, hats in 6 colour triples at 3 tilt angles, three bow ties, and 8 confetti colours each with a darkened variant for shading. Even the night sky is hand-made — a 4×4 ordered-dither matrix, plus a small bitmap font with a macron table so that the banner can spell KĀKĀPŌ PARTY! without borrowing a system typeface.
The motion is choreographed rather than random. The loop runs at 124 BPM, and each eight-beat phrase picks one of six crowd modes: everyone together, a Mexican wave, every other bird, a free-for-all, a ripple out from the middle, or rows taking turns. It honours prefers-reduced-motion, and the on-screen hint reads "tap" or "click" depending on whether the device reports touch.

Why pixel art is an unusually honest test
Claude Opus 5.5 does not draw this. It wrote the program that draws it, which means the model had to hold a large amount of committed detail in its head at once: a palette that would not clash, sprite geometry that reads at 18 pixels wide, a jump arc that loops, and confetti that falls convincingly. There is no way to bluff that with a lucky sample. A single mis-set coordinate shows up as a hole in a bird's head.
It also had to work from photographs. The three reference images went in as image input, and what came back out is a symbolic sprite — an abstraction of a moss-green, whisker-faced parrot, not a trace of the photo. That is the whole pipeline in miniature: perception in, code out, pixels produced by the code.
The visual check is the sharpest part, and it cuts the other way too. Nothing in the file was rendered for the author to inspect before he opened it; the artifact either looks like a party or it does not, and he published a link, so you can judge for yourself. That is a stronger form of evidence than a screenshot in a thread — and still much weaker than a number.
The video is a Claude Code story, not a Claude Opus 5.5 story
The fifteen seconds on the closing slide were made by a local Claude Code session driving Playwright, not by the model that wrote the animation, and the distinction matters if you are trying to reproduce any of it.
The interactive page only bursts confetti when you click it. So the recorder had to click — ten times, at scripted coordinates spread across the canvas, from three seconds in to 13.2 seconds, inside a 1280×720 recording that was closed at sixteen seconds. The published script is about twenty lines, and that is the honest headline: the hard part of turning a web animation into a slide asset was ten timed mouse events.
A second session the following day attacked the file size instead. The first encode was a 10,445,811-byte MP4; a two-pass 2 Mbps H.264 encode with light denoise and a preset tuned for flat graphics landed at 3,299,473 bytes — 68% smaller, still 1280×720, still 25 fps, still fifteen seconds, no audio track. Measured against the raw recording, structural similarity fell from 0.984 to 0.932. A 960×540 attempt came out both bigger and blurrier, because pixel art does not survive downscaling. Those are the sorts of numbers a screen-recorded demo never publishes, and they are the reason this particular write-up is unusually easy to trust on the mechanics.
What this does not prove about Claude Opus 5.5
• Sample size — one prompt, one subject, one person. The "surprisingly capable at pixel art animation" framing was reputation the author had read, not a measurement he ran.
• Cost — no token counts were published for either session, so the run cannot be priced from the material. The artifact itself is 45,880 bytes, roughly 11.5K output tokens, which at Anthropic's published $20 per million output tokens is a floor of about 23 cents for the final file alone — and a floor is all it is, because everything the model wrote that did not survive into the finished HTML is invisible.
• Generality — a party of identical birds is a forgiving scene. One sprite, recoloured, plus camera-free effects. It says nothing about scenes that need many distinct objects, or about whether the same quality holds at three minutes instead of fifteen seconds.
• Independence — every figure here is either measured from the published source or taken from Anthropic's own rate card. There is no third-party evaluation of Claude Opus 5.5 doing pixel art, and this piece does not invent one.
Running the same experiment on your own subject
The reason this demo is worth copying is that it is cheap and self-contained. A single HTML file, one canvas, no assets — you can hand the same prompt to a model with your own reference photo and see the result in one sitting, with no pipeline to stand up first.
Claude Opus 5.5 is on OrcaRouter at Anthropic's published list price with the markup passed through at 0% — $4.00 per million input tokens, $20.00 per million output, $0.20 per million cache reads, with the full 1M-token context at standard pricing. That matters for this kind of experiment specifically: a novelty prompt is exactly where you want to compare without signing anything, and one API for 200+ models means the same call shape reaches the cheaper routes if you want to see how a smaller model handles the same sprite sheet. Automatic failover covers you if a route degrades mid-comparison, and if you would rather not choose at all, the routing DSL can send the same prompt to two models and let you pick the better party.

Two things are worth watching from here. The first is whether anything like this gets measured rather than admired — a fixed prompt, a fixed subject, and a handful of models producing the same brief would tell you far more than another thread of animations. The second is cost transparency: the one number a demo like this never carries is what it took to get there, retries included, and until that shows up in write-ups like this one, "surprisingly capable" will keep standing in for a figure nobody published.

For now, the honest summary of the kākāpō party is narrower than the reposts and more useful than they look. A flagship model wrote 45,880 bytes of sprite code that runs offline, animates 22 birds at 124 BPM, and needed a ten-click Playwright script to become a video. The demonstration is real, the source is public, and the claim it supports is about what a model can hold in one file — not about what it can do on average.
