The v2 engine splits the work the way a good studio does: the model decides what to say, deterministic code decides how it looks, and a judge signs off before you see anything. This page is the honest tour of that pipeline. Each artifact it produces is its own world: images, carousels, and video.
One call walks eleven stages. The model is used where judgment lives; everything that touches pixels is deterministic code. That split is why a post can be revised without being re-rolled.
Every visual decision is a serializable spec: the archetype, the frame geometry, the type system, the palette, the words. The renderer never improvises. Same spec, byte-identical PNG, every time. Below: a real spec and the master it rendered, judged SHIP at 95.
{
"format": "photo-hook",
"copy": { "onImageText":
"Roasted this week, not last spring" },
"layoutSpec": {
"archetype": "split-block",
"frame": { "kind": "split", "axis": "y",
"ratio": 0.55 },
"anchor": "center-start",
"lead": "image"
},
"typeSystem": {
"display": { "family": "Oswald", "source": "brand" },
"body": { "family": "Lato", "source": "brand" }
},
"colors": { "primary": "#2B1D16",
"accent": "#C96F2E" }
}
// judge: { "verdict": "SHIP", "score": 95 }
Because the spec is the design, an edit is a diff. A revision can fix the headline while the photo, frame, and palette hold verbatim.
Every render faces a vision judge before it returns. Four hard gates come first; failing any one is a no-ship regardless of the numeric score.
The swap test: put a competitor's name and city on the post. If it still works, it fails.
Every claim needs proof, in the post or in the proof bank. Invented stats, staff, or testimonials are a hard no-ship.
The on-image text is read back off the render and checked against the approved copy. Artifacts and garbled glyphs fail.
Would the owner recognize their business in two seconds and proudly sign it? If not, it does not ship.
| Dimension | Weight | What a 5 looks like |
|---|---|---|
| Specificity | 3x | Multiple checkable specifics; fails the swap test in the good way. |
| Voice | 3x | Unmistakably this owner, not beige neutral. |
| Visual craft | 3x | One focal point, survives a squint, legible at thumbnail size. |
| Hook | 2x | Three to seven words that create a reason to read. |
| Brand fit | 2x | This business's palette, type, and tone, not a default template. |
| Focus | 1x | One subject, one through-line, one ask. |
| Proof | 1x | Claims backed by a number, source, quote, or visible evidence. |
| CTA | 1x | One specific next step with a concrete payoff. |
| Language | 1x | Plain and confident. No buzzword soup, no AI tells. |
| Format discipline | 1x | Platform dimensions, safe zones, three to eight tags. |
| Coherence | 1x | Caption, image, and on-image text reinforce one message. |
Design quality is graded on its own ladder, TEMPLATE to COMPETENT to STRONG to GREAT, so a post with fine words and a formulaic layout still gets sent back. The revise loop is bounded: at most two passes, each re-running only the weakest stage, with a no-regression floor so a fix never ships something worse than it started with. The one exception is deliberate: when a user dictates exact words, their words win, and the judge's dissent is recorded instead of obeyed.
A feed dies when every post is the same shape. Layout is dealt from five archetypes, type from six voices, and the deal is deterministic per brand and post: the same post re-renders identically, the next one refuses to repeat it, and two businesses in the same town stop wearing the same face.
Brands with real fonts keep them; the voices dress everyone else. Real dealt renders are on the homepage gallery and the image world.
A clean shot from your camera roll beats anything generated, and the engine ranks and places it first. Collages and posed weak shots are rejected, not polished.
Generated scenes are atmosphere: texture, light, materials. Your business name never enters the image prompt. The engine will not invent your storefront, your staff, or your logo.
Palette and logo are honored on every render, and your fonts carry the type system when you have them. The judge's brand-fit dimension exists to catch drift.
A carousel is planned as an arc: a hook that earns the swipe, a rehook that stands alone, body slides that each carry one idea, and a closing ask. The dealer picks one frame family for the whole deck, and variation comes from each slide's role, not from per-slide randomness. Randomness reads as a tell; the judge punishes it. The whole eight-slide deck is on the carousel world.



The same engine also cuts short-form video: narrative beats, motion b-roll, captions timed to a real voiceover. It runs Taka's reels in production today and joins the public API when it clears the same bar the rest of this page describes. Watch one on the video world.