The v2 engine

Decide. Render. Judge. Revise.

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.

The pipeline

brief in · masters out

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.

  1. 01BriefmodelThe model reads the business context and distills what this post is for: goal, audience, the one message, and the proof that backs it.
  2. 02GatescodeDeterministic gates kill vague briefs before any pixels exist. No concrete message, no supported claim, no post.
  3. 03AnglesmodelThree to five candidate points of view. Angles that would work for any competitor fail the swap test and are dropped.
  4. 04CopymodelHook options of three to seven words, a platform-native caption, and a call to action in the reader's voice.
  5. 05FormatcodeContent picks the format: a number wants a stat card, a testimonial wants a quote card, a real moment wants a photo hook.
  6. 06ImagerymodelReal brand photos lead. When the pool is spent, the image model paints a name-free, text-free atmospheric scene instead.
  7. 07The dealcodeA dealer deals one of five layout archetypes and a typography voice, deterministically per brand and post. No roulette, no repeats.
  8. 08RendercodeA real layout engine composites the text over the scene. Pixels come from code, so warped text and garbled logos are structurally impossible.
  9. 09JudgemodelA vision judge checks four hard gates and eleven weighted dimensions, then hands down a verdict with its reasons on the record.
  10. 10RevisemodelBelow the bar, only the weakest stage re-runs while everything else holds. Bounded, surgical, and never worse than it started.
  11. 11MasterscodeThe settled spec renders true 4:5 and 9:16 masters, separate renders, not crops. Caption, hashtags, score, and the spec ride along.

The spec is the design

same spec · same pixels

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.

spec.json · abridged
json
{
  "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 }
The rendered post this spec produced for Driftwood Roasters
Driftwood Roasterssplit-blockOswald

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.

The judge

4 gates · 11 dimensions

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.

G1Specificity

The swap test: put a competitor's name and city on the post. If it still works, it fails.

G2Truth

Every claim needs proof, in the post or in the proof bank. Invented stats, staff, or testimonials are a hard no-ship.

G3Visual integrity

The on-image text is read back off the render and checked against the approved copy. Artifacts and garbled glyphs fail.

G4Owner pride

Would the owner recognize their business in two seconds and proudly sign it? If not, it does not ship.

DimensionWeightWhat a 5 looks like
Specificity3xMultiple checkable specifics; fails the swap test in the good way.
Voice3xUnmistakably this owner, not beige neutral.
Visual craft3xOne focal point, survives a squint, legible at thumbnail size.
Hook2xThree to seven words that create a reason to read.
Brand fit2xThis business's palette, type, and tone, not a default template.
Focus1xOne subject, one through-line, one ask.
Proof1xClaims backed by a number, source, quote, or visible evidence.
CTA1xOne specific next step with a concrete payoff.
Language1xPlain and confident. No buzzword soup, no AI tells.
Format discipline1xPlatform dimensions, safe zones, three to eight tags.
Coherence1xCaption, image, and on-image text reinforce one message.
SHIP · 85+SHIP WITH ONE FIX · 70-84REVISE · 50-69REJECT · below 50any gate fail · NO SHIP

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.

The variety system

5 archetypes · 6 voices · 5 formats

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.

photo-fullFull-bleed photograph, text anchored in its quiet zone.
split-blockPhoto and brand field share the canvas across one seam.
inset-cardThe photo held small and precious on a brand field.
text-panelA dedicated solid text zone attached to the image.
poster-gridKicker, hero line, baseline. No photo, all type.
gritty-condensed · Antonimpact-grotesque · Archivo Blackcondensed-classic · Bebas Neueeditorial-serif · Playfair Displaymodern-grotesque · Space Groteskfriendly-rounded · Nunito

Brands with real fonts keep them; the voices dress everyone else. Real dealt renders are on the homepage gallery and the image world.

Brand kits, honestly

real assets lead
1Real photos lead

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.

2Generation stays name-free

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.

3The kit is law

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.

Decks sign a contract

one frame family per deck

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.

Slide from a generated carousel deck
slide 1 · hook
Slide from a generated carousel deck
slide 3 · step 1
Slide from a generated carousel deck
slide 7 · proof

The stack

honest names, no mystery sauce

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.

Now watch it work.

One call, a brief, and a brand kit. You get the masters, the caption, the judge's score, and the spec to revise it with.

Post the engine rendered for Kiln House Ceramics
Kiln House Ceramicssplit-blockArchivo Black