Skip to content
Live nowSeason 2 · Episode 15 · Agentic Coding Guide
← Back to builds
Screenshot of VIBE CHECK — ship or revert real AI agent code

VIBE CHECK — ship or revert real AI agent code

by ₥AN$A

★ 4.2 (8)

Voted by ₥AN$A, Air Planes, Auny 🧡, kaleb, Nathan, Rose Loops, Shawn Porter, Tia

A brutalist guide + game on the real agentic coding workflow. It opens with a 6-step interactive walkthrough (Plan -> Prompt -> Diff -> Test -> Commit -> Ship), each paired with the specific mistake that sinks a vibe-coded build. Then a 20-round timed Gauntlet: you get a real scenario (a plan, a diff, a claimed test result) and 14 seconds to call SHIP or REVERT, with an instant lesson either way. The centerpiece is Live Lab: you write an actual prompt telling an AI agent what function to build, it's sent server-side to a real LLM via OpenRouter constrained to return exactly one named function, the response is scanned for scope violations (fetch, globals, eval, infinite loops) before anything runs, then it's tested against real test cases inside a sandboxed iframe with a freeCodeCamp-style pass/fail checklist. Vague prompts get vague code, on purpose, no scripting involved.

Models
Claude Sonnet 5 (built the app); openai/gpt-4o-mini via OpenRouter (the live agent players prompt inside Live Lab)
Prompts & issues

Biggest real issue was making Live Lab safe to expose publicly: an LLM-generated function shouldn't be able to touch fetch/document/eval/infinite-loops when a stranger's browser runs it, so I added a regex scope-scan that blocks execution before it ever reaches the sandboxed iframe, plus a per-IP rate limit on the OpenRouter proxy so a live audience can't run up the bill. Also hit a real CSS bug: the SHIP/REVERT verdict overlay used `display:flex` unconditionally, which beat the browser's default `[hidden]{display:none}` by specificity, so the verdict showed immediately on every fresh round instead of after answering. Found it by actually testing at a mobile viewport instead of just trusting the desktop view, fixed with an explicit `.verdict[hidden]{display:none}` override.