Izveidot kontuCreate account
‹ All playbooks
Cast a colleague character

growth.cast-character·version 1.0.0·proposed

Cast a colleague character

A colleague has one approved face and a complete, transparent, QA-passed line of assets (master, 256, 64, full body, six poses, scene), recorded so every later render is the same person.

RūdolfsBrand Designerruns itProfile ›
Whenon request — a company hires a colleague or a personal assistant who has no face yet, or a face needs a complete pose line
Who actsthe agent acts after approval
Timemaster: ~15 min active; a full line: 25–60 min unattended; plus the owner's two looks
Countryany country
Sign in to run thisThis playbook opens inside Brain Club. Sign in to read and run it.

When to use

A colleague — a catalogue specialist, a company-built colleague or a person's own assistant — needs a face, or a face exists but has no approved master and pose line. Not for recolouring or re-dressing an approved character: that is a new render from the approved master (S7 only), never a recast. Not for app icons or illustrations without a person — use growth.brand-kit.

Before you start

  • The role and the name are decided. A human name is data; the role key is English and never renamed.
  • The family style clause and palette are fixed text. Brain Club: the clay clause in the character spec §3.
  • The lane is chosen:
  • product — Team → Build a colleague (or the company characters API). Every spend shows its points first.
  • The budget is known: a full line takes about 12 accepted images and 15–25 renders with retries.
  • The owner knows two looks are theirs: the brief (S2) and the master (S5).

What a run requires8

  • Approval · S2 · ownerthe run stops until a named person records the decision
  • Number gate · S4 · seeThroughPct <=0.5 · greenEdgePx ==0 · hairSpecks <=3a metric not measured fails — never "passed"
  • Approval · S5 · ownerthe run stops until a named person records the decision
  • Number gate · S7 · seeThroughPct <=0.5 · greenEdgePx ==0 · hairSpecks <=3a metric not measured fails — never "passed"
  • Number gate · S9 · rejected ==0a metric not measured fails — never "passed"
  • Reviewer ≠ author · S9 reviews S4, S6, S7, S8the one who did the step cannot pass it
  • Approval · S12 · ownerthe run stops until a named person records the decision
  • Cost confirmed by a person · images 15-25 renders for a full line (about 12 accepted files) · minutes master ~15 active; full line 25-60 unattendeda run does not start until someone accepts the cost

Any step can wait until a date and reopens by itself; every closed step leaves evidence (a note, a link, a number).

The trail12 steps

  1. Write the casting briefagent

    One identity clause per character: <Name>, a <trade> in their <age band>: <face> — hair, skin, eyes, eyewear or none, build. They wear <one outfit>, and hold <one prop that names the trade>. Plus one scene line (the trade's objects, no person). Put the new face in a range table against the existing cast.

    Done when the clause and scene line are in the cast document, and no two characters share hair, age band and build.

    ⛔ A second outfit is a second character. More than one prop becomes a desk.

  2. Approve the briefownerneeds approval · owner

    Approval · S2 · owner — the run stops until a named person records the decision

    Approve the brief

    Done when the owner has accepted or changed each clause, with a date. The approved clause is copied character for character into every render from here on.

  3. Render three master candidatesagent

    Prompt = style clause + identity clause + stylisation clause (big simplified eyes, slightly larger head, smooth clay skin, no wrinkles, pores or fabric weave, hair as smooth sculpted shapes) + "no earrings, jewellery, watch, badge, text, logo, extra props" + an existing approved character as a style-only reference ("copy its rendering, not its face, hair, clothes or props"). Background: flat pure green #00FF00, portrait 1024×1536. Never say "transparent".

    Open Team → Build a colleaguein the productcoming — not served yet

    Done when three candidates exist, each full figure from hair to shoes with margin.

    anna-locked-prompt.txt
    The prompt that produced Anna's approved v2 master, locked verbatim (identity clause + style clause). Copy its structure; never its face.
  4. Key and measure every candidateagent

    Number gate · S4 · seeThroughPct <=0.5 · greenEdgePx ==0 · hairSpecks <=3 — a metric not measured fails — never "passed"

    Chroma-key at tolerance 40, then despill green only in the edge band (a few px from transparency). Measure: see-through (pixels inside the eroded silhouette below alpha 250) ≤ 0.5 %, green-dominant edge pixels = 0, opaque plate-coloured specks in the hair ≤ 3, the pixel check (spill, halo, hard rim, clipped). Composite on light (#f4efe6) and dark (#4a3a5c) ground and look at 100 % and at 2× on the hair.

    Record the measured numbersGate: seeThroughPct <=0.5 · greenEdgePx ==0 · hairSpecks <=3

    Done when each candidate has its numbers and a pass/fail, and the passing ones are laid side by side.

    ⛔ The pixel check reads "clean" on a see-through garment and on a hue it was not written for. The numbers above are the gate; the check is one of them.

    Anna v2 on its source plate — the raw kept for repeatable extraction. Her plate was magenta; the green plate rule came from later batches.
    Anna v2 on its source plate — the raw kept for repeatable extraction. Her plate was magenta; the green plate rule came from later batches.
    Edge proof on the light ground (#f4efe6) — look here for halos and plate colour at 100 % and 2x.
    Edge proof on the light ground (#f4efe6) — look here for halos and plate colour at 100 % and 2x.
    The same file on the dark ground — the ground that shows a see-through garment and green specks in hair.
    The same file on the dark ground — the ground that shows a see-through garment and green specks in hair.
  5. Approve the masterownerneeds approval · owner

    Approval · S5 · owner — the run stops until a named person records the decision

    Show the passing candidates at product size (256 and 64) and full, on both grounds. The owner names one.

    Approve this master

    Done when the approval (who, when) is recorded and the chosen raw is kept as the source plate.

    ⛔ This is a casting decision. A later master is a recast: keep the old one, compare, approve again.

    Approved master (owner, 2026-09-09): one render, real alpha, extracted in chroma mode at tolerance 40.
    Approved master (owner, 2026-09-09): one render, real alpha, extracted in chroma mode at tolerance 40.
  6. Derive the three product sizes from ONE extractionagent

    From the approved master: full body (1400 long side, shipped at 960 tall), 256 head-and-shoulders crop, 64 crop.

    Done when the crop frames head and shoulders without cutting forehead, chin or a shoulder, and all three come from the same keyed file.

    ⛔ Never generate a portrait separately — it is a different person.

    256 crop from the SAME keyed master — head and shoulders, nothing cut.
    256 crop from the SAME keyed master — head and shoulders, nothing cut.
    64 crop from the same extraction.
    64 crop from the same extraction.
  7. Render the six poses from the approved masteragent

    Number gate · S7 · seeThroughPct <=0.5 · greenEdgePx ==0 · hairSpecks <=3 — a metric not measured fails — never "passed"

    One render per pose, each with the approved master and the portrait as references, the identity clause, "no items not in image 1", and one pose line: bust ("cropped at mid-chest with margin left and right of the shoulders"), greeting, presenting (the prop stays the same object), sitting (on a plain stool, no desk), thinking (hand at chin, eyes up and away), walking (mid-stride, arm swing, both shoes). Key and measure as S4; ship poses at 560 tall.

    Record each pose's numbersGate: seeThroughPct <=0.5 · greenEdgePx ==0 · hairSpecks <=3

    Done when each pose passes S4's numbers and matches the master at equal head size — face, age, build, skin, hair, garments, colours, prop.

    ⛔ Never use a pose as the reference for another pose; errors compound.

    Approved master (owner, 2026-09-09): one render, real alpha, extracted in chroma mode at tolerance 40.
    Approved master (owner, 2026-09-09): one render, real alpha, extracted in chroma mode at tolerance 40.
    Old line against v2 at UI scale, on cream and on plum.
    Defect: The old line drifted between poses — face width, eye spacing, jaw, bun volume and body scale — because poses were not rendered from one master. Old line against v2 at UI scale, on cream and on plum.
  8. Render the sceneagent

    No person, no text or numbers. The trade's objects grouped in the centre with an empty margin on every side, soft clay outlines, flat magenta plate, landscape. Key by colour, repair the outer edge band, resize with premultiplied alpha to 800 wide.

    Done when nothing touches the frame and no plate colour shows in handles or gaps on the dark ground.

  9. Try to reject everythingreviewer

    Number gate · S9 · rejected ==0 — a metric not measured fails — never "passed"

    Reviewer ≠ author · S9 reviews S4, S6, S7, S8 — the one who did the step cannot pass it

    A different agent, not the renderer. It re-measures S4 on every file, builds a line-up of master and poses at equal head size on both grounds with 2× hair zooms, and checks sizes, the clause, extras, fingers, clipping, photoreal drift and near-duplicates of the existing cast.

    Record the reviewGate: rejected ==0

    Done when every file has pass or a named defect with severity (reject / minor) and evidence.

  10. Fix only what was rejectedagent

    Re-render the rejected files, at most three tries each. If the master was rejected, go back to S3 and re-render every pose.

    Done when the reviewer's rejects are gone, or the run stops with the files still owed named.

    ⛔ If the image lane reports a usage limit: stop, write the owed files and their ready prompts, and schedule the retry after the reset. Never ship a best-of-three reject as done.

  11. Recordagent

    The character record (identity clause, lane, plate, prompts, chosen master and why, status), the READMEs, a contact sheet of all ten files on light and on dark ground, rejected candidates downscaled with one-line reasons.

    Done when someone who was not in the run can re-render any pose from the record alone.

    A contact sheet of the whole line — what S11 records and S9 reviews against.
    A contact sheet of the whole line — what S11 records and S9 reviews against.
  12. Ship the lineownerneeds approval · owner

    Approval · S12 · owner — the run stops until a named person records the decision

    Product lane: the character is attached to the colleague in Team. Operator lane: the branch is committed and merged by the tree's owner, and the atlas shows every format.

    Approve shipping

    Done when the owner has seen the character in the real surface (Team profile, atlas) and it is marked approved.

Checks — how we know it worked

  • Every file: real alpha (corners transparent), see-through ≤ 0.5 %, no plate colour on the rim, not clipped.
  • Master, portrait and 64 come from one extraction (same source plate id in the record).
  • A line-up of master + six poses at equal head size reads as one person to someone who did not render it.
  • The identity clause in the record is byte-identical to the one in every prompt used.
  • Files the atlas lists for the role: 10 of 10 present.

If it goes wrong

SymptomResponse
The render has a checkerboard "transparent" backgroundIt is opaque art. Re-render on a flat green plate.
Background came back black with a glow, or not flatReject; restate "perfectly flat solid pure green filling the whole frame".
A garment goes see-through after keying, pixel check says cleanPlate too close to the garment (an orchid plate did this to a lavender vest). Re-render on green.
Pink or crimson fringe in red or dark curlsMagenta plate trapped between curls. Use green plate and edge-band despill; ask for hair as solid sculpted shapes.
A grey or desaturated band across a garmentA whole-figure despill ran. Re-key with edge-band despill only.
Mint garment or prop turns greySame cause — despill touched the interior.
Earrings, belt, patch or flag appearedName them in the "no" list; reject the render, never keep it as "best of three".
Character reads photoreal next to the familyAdd the style-only reference and the stylisation clause; recast the master.
Bust shoulders touch the side edgesAsk for margin left and right; pad the canvas transparently rather than crop the figure.
Scene objects touch the frame, or magenta returns after resizingAsk for an empty margin; repair the edge band and resize with premultiplied alpha.
Usage limit reached mid-runStop; record owed files + prompts; retry after the reset time the lane gave.

What each step leaves behind

  1. S1the clause and scene line are in the cast document, and no two characters share hair, age band and build.
  2. S2the owner has accepted or changed each clause, with a date. The approved clause is copied character for character into every render from here on.
  3. S3three candidates exist, each full figure from hair to shoes with margin.
  4. S4each candidate has its numbers and a pass/fail, and the passing ones are laid side by side.
  5. S5the approval (who, when) is recorded and the chosen raw is kept as the source plate.
  6. S6the crop frames head and shoulders without cutting forehead, chin or a shoulder, and all three come from the same keyed file.
  7. S7each pose passes S4's numbers and matches the master at equal head size — face, age, build, skin, hair, garments, colours, prop.
  8. S8nothing touches the frame and no plate colour shows in handles or gaps on the dark ground.
  9. S9every file has pass or a named defect with severity (reject / minor) and evidence.
  10. S10the reviewer's rejects are gone, or the run stops with the files still owed named.
  11. S11someone who was not in the run can re-render any pose from the record alone.
  12. S12the owner has seen the character in the real surface (Team profile, atlas) and it is marked approved.

Evidence to keep

Identity clause and its approval (who, when) · every prompt used, per file · raw source plates · QA numbers per file (see-through, edge pixels, specks, pixel-check verdicts) · contact sheets on light and dark ground · rejected candidates with reasons · the reviewer's verdict · renders or points spent · the owner's master approval.

How this playbook improves

After every 5 characters ask: how many renders did one accepted file cost, and which step caused most retries? Which defect did the reviewer catch that the renderer's numbers passed — and can it become a number? Did the owner reject a master the numbers passed, and what did they see? A new version turns the most frequent reviewer catch into a measured gate in S4 and says so in its change note.

Measured in the runs this version comes from (Brain Club cast, 2026-09-14/15): 12 characters; batch 1 (magenta plate) 7 characters with 2 failing review on hair fringe and a despill band; batch 2 (green plate) 3 characters, 2 needing a fix pass — one for photoreal drift, one for unrequested earrings; batch 3 added the style reference, the "no jewellery" list and the hair-speck count, and 2 re-rolls passed first time. The Codex image lane hit its usage limit in two of three batches.