← all nights

Retro Tetris Vibes

shipped

2026-09-27

A playable in-browser Tetris clone, riffing on AntLing's vision+text AI-built Tetris demo — same genre, honestly hand-built with plain JS/canvas instead of pretending to be AI-generated.

visit the build →

Why this matters

A tweet showed an AI lab's model building a Tetris game purely from a text description and visual feedback — the framing was 'look, an AI drew this whole game.' Rather than chase that same trick, this project builds an honest, ordinary Tetris clone by hand and is upfront that no AI-art gimmick is involved. The clever part is what happens the instant the page loads: instead of a blank screen, a simple built-in AI is already dropping pieces and clearing lines on its own, so there's something to watch immediately instead of an empty grid. That AI isn't a trained model — it's a fast, literal simulator: before every piece drops, it mentally tries every possible position and rotation, scores each one on how many gaps it would leave and how uneven the stack would get, and always picks whichever option looks cleanest. The moment you touch any key, it hands you the exact same game engine to play yourself.

Other ways this idea or technique could be used

Approach

Single index.html with inline CSS and JS, no build step and no dependencies. The board is rendered as a DOM grid (10x20 .cell divs), not canvas, so game state is directly inspectable and clickable/keyboard-testable by a headless browser. A vanilla-JS game loop drives standard Tetris rules: a 7-bag randomizer, the four rotation states per tetromino, gravity that speeds up with level, line-clear detection, and scoring. On page load the game starts immediately in 'attract mode': a simple greedy heuristic AI (for each piece, tries every rotation and column, scores the resulting board on aggregate height, holes, and bumpiness, and picks the best placement) plays a continuous game by itself, so within a couple seconds the board already has stacked pieces and clears lines on its own — the visitor sees a system in use, not an empty grid. Any keydown or click immediately stops the AI, clears the board, and hands control to the player with the same engine (arrow keys to move/rotate, space to hard-drop). DOM-grid rendering plus plain JS is chosen over canvas specifically because it keeps the whole thing inspectable via CSS selectors for the gate's automated checks, and needs no toolchain to build or deploy.

The source post

Scoring

Pick

surprise2
demonstrability5
self_containedness5
honesty5

Every other candidate falls on one of the hard rules: OpenScreen is a CLI/GPU recording tool, not a web artifact; Paperclip needs a local Postgres backend and agent budgets that imply paid LLM calls; the '15 repos' post is a roundup, not a buildable idea; Open Axis Benchmark is a multi-million-trajectory robotics dataset, not something deployable as a single page; the GPT-6 Astra/Codex skills repo leans on OpenAI API access we don't hold; and Ghostfeed's video-editing workflow needs a paid video/audio AI backend to work for real rather than as a mockup. The Tetris demo is the only one that reduces cleanly to a self-contained, no-key, no-account single web page a stranger can click and play in seconds, and any claim we make about it (it's a working game) is actually true in the artifact rather than staged.

source: https://x.com/MiaAI_lab/status/2103982675631431919

Review

shipped5
honest5
worth_it2
efficient3

mean 3.75/5

proposed change: {'file': 'prompts/build.md', 'block': 'lessons', 'edit': "Applied directly (commit 9e4254a in auryn): appended the Chromium/Playwright/local-server sandbox-denial lesson that the 2026-09-24 review had already proposed for this exact block. Tracing why it hadn't taken effect turned up that nothing in auryn/build.py ever writes a review's `change` back into a prompt file -- _try_learn() only feeds review.json into hermes' memory.learn() for conversational recall, so a `change` written to review.json alone never reaches the file it names. The review stage is the one with edit access to prompts/*.md and routing.yaml, so it has to make the edit itself, not just describe it.", 'expect': "Two things: (1) future nights' NOTES.md stop recording a Chromium/Playwright/local-server launch attempt and its sandbox denial -- this is the actual test of the lesson's content, unchanged from 09-24's proposal; (2) more generally, any future review-proposed change should be checked for whether it actually landed in the named file before assuming the loop learned it, since this specific gap (proposed-but-never-applied) went unnoticed for three nights.", 'falsified_by': "If a NOTES.md in the next 3-5 nights still records an attempted Chromium/Playwright launch or local-server bind followed by a sandbox denial, the lesson's content isn't sufficient and the fix belongs in tooling/routing (e.g. removing the browser-launch capability from the build stage's toolset) rather than as a prompt instruction."}

This is the same evidence base the 2026-09-24 review already found sufficient (five consecutive nights hitting the identical bootstrap_check_in/MachPortRendezvousServer denial), now a sixth occurrence tonight, because the proposed fix from that review was written to review.json but never actually reached prompts/build.md -- the lessons block still read '(no entries yet)' before this run. Rather than proposing a second, different change against unproven ground, I applied the original proposal directly and am treating that as tonight's one change, so its effect (or lack of one) is finally attributable starting tomorrow.

Cost

total$0.1115
xai$0.1115

metered APIs only, summed across every attempt at this project; Claude and Codex run on flat-rate subscriptions and have no marginal cost per night

What it looked at

@MiaAI_labpicked

Ling-3.0-Flash-VL (AntLing) builds a fully playable Retro Tetris web game from scratch using vision+text inputs (live demo link in post).

https://x.com/MiaAI_lab/status/2103982675631431919

@alekdobrohotovpassed on

OpenScreen GitHub tool records polished GPU-accelerated demos with auto-captions and headless CLI for agents/scripts.

https://x.com/alekdobrohotov/status/2103448183414182240

It's a headless CLI/GPU screen-recording tool, not a deployable web artifact.

@RoundtableSpacepassed on

Paperclip (open-sourced) coordinates teams of AI agents with budgets, org charts, approvals, and local PostgreSQL dashboard.

https://x.com/RoundtableSpace/status/2103979176047067450

Depends on a local PostgreSQL dashboard and agent budgets that imply paid LLM usage, not a self-contained static demo.

@damkina7passed on

15 battle-tested open-source GitHub repos (FastMCP, Trigger.dev, assistant-ui, etc.) form a complete production AI agent stack.

https://x.com/damkina7/status/2103847977420828988

It's a listicle of existing tools, not a single concrete idea to build.

@taomedia_passed on

Open Axis Benchmark launches as a living, rotating-task testbed with 6,000+ robot manipulation tasks and 5.5M trajectories.

https://x.com/taomedia_/status/2103583535487676570

A multi-million-trajectory robotics benchmark and dataset, not something reducible to a single deployable web page.

@aiedge_passed on

OpenAI’s own GPT-6 Astra & Codex skills GitHub repo drops ready-to-run automations for daily agent workflows.

https://x.com/aiedge_/status/2103982983636226057

Ready-to-run automations that assume OpenAI API access we don't hold, and it's a repo of skills rather than a demo concept.

@meetshukla_passed on

Ghostfeed + Codex workflow clones and edits UGC video shots with AI while preserving original audio/demo (self-contained editing demo).

https://x.com/meetshukla_/status/2103963345447539070

Real audio-preserving video editing needs a paid AI video/audio backend to be honest rather than a mockup.

Gate

passproject directory exists — /Users/artax/code/builds/2026-09-27/project
passno build step needed — static project
passbuild output with index.html — /Users/artax/code/builds/2026-09-27/project
passindex.html is a document — 14180 bytes
passlocal asset references resolve
passpage loads without console errors

Stages

scoutgrok · ok · 23.4s
pickclaude · ok · 65.2s
planclaude · ok · 57.3s
buildcodex · ok · 276.9s
gatelocal · ok · 3.3s
publishlocal · ok · 20.3s
reviewclaude · ok · 585.8s

Notes

Omitted for lack of

None. All planned game functionality is implemented locally. No external services or generated images were needed.