Full source · 657 lines
0001 ---
0002 name: native-copy
0003 description: Write native ad copy variants for DawnBands (or other brands). Use when creating Facebook/Instagram native ad copy, writing ad copy variants for A/B testing, generating headlines + body copy for Meta ads, or writing copy for native ads pointing to listicle advertorials. Triggers on "write native ads", "ad copy variants", "write copies for [ad]", "native copy", "Meta ad copy", "5 variants for [ad]".
0004 ---
0005
0006 # Native Copy Skill
0007
0008 Write high-converting native Facebook ad copy using Zakariah's framework, deep avatar research, and proven format rules.
0009
0010
0011
0012 ## IMAGE LANE ORDER (Fish 2026-08-25 — PERMANENT)
0013
0014 1. RIP FIRST: pull_native_rips.py with queries shaped like real post titles ("my son's room",
0015 "light under the door"), not staged ad-scene descriptions. Review every candidate by eye.
0016 2. A real rip that passes gates TAKES THE SLOT over any gen, even when a gen matches the
0017 copy's scene better. Nativeness > relevance is absolute (Fish receipt: charging-caddy rip
0018 over on-scene kitchen gen, 8-25).
0019 3. Gen fallback is NEVER bare-prompt. Pull a real Pinterest/web reference photo FIRST
0020 (scrapling + curl, the boring amateur photo not the good one, demographic-matched when
0021 people appear) and pass it as the style reference. Fake-UI/help-post recreations reference
0022 a real screenshot of the actual UI.
0023
0024 ## DIRECTNESS — THE THREE-STRIKE ERROR (Fish 2026-09-01, PERMANENT)
0025
0026 Fish rejected three consecutive rewrites of the same passage. Each fixed the surface and kept
0027 the literary move. Check all three before shipping any line.
0028
0029 1. **ROUNDABOUT** — "What I ordered was the first knock... the honest answer to what happens
0030 when he leaves home is that I am the answer."
0031 2. **ANAPHORA** (only *sounds* direct) — "To stop making the first knock. / To stop walking to
0032 his door. / To stop hearing my own voice before seven." Three or more consecutive lines
0033 opening with the same word or phrase is a poem. Fish: "make sure people actually say that
0034 ... or itll throw them off."
0035 3. **ROLE-ABSTRACTION** — "right now I am still the plan." Fish: *"i am still the plan is
0036 still not what a mom says."* She never becomes an abstract noun.
0037
0038 **GOOD:** "I am tired of being his alarm clock. I do not want to start every day angry at my
0039 own kid. He leaves next year, and I will still be the one calling him every morning."
0040
0041 Banned: `I am still the plan` · `I am the answer` · `that was the variable` · `never in that
0042 channel` · `that is the whole thing` · `the part I could not fix was` · `What I ordered was X`
0043
0044 Instead: name the concrete action she performs, or the feeling she has. Register anchor from
0045 real buyers: "Want to start the school year off with out the fighting." / "Hoping it stops
0046 angry mornings I wake up in fight or flight mode."
0047
0048 Exception: real idioms mothers use are fine — "I am his alarm clock", "human snooze button".
0049
0050 Also binding: grade 3-5, average sentence under 14 words, nothing over 28, active voice only,
0051 say HABITUATES / TUNES IT OUT / AUTOMATICALLY in plain words.
0052
0053 **Readability is semantic, not only numerical (Fish 2026-09-04, permanent).** A short sentence can still be nonsense. If a line needs translation, describes a mental state as an abstract status, or sounds like compressed copywriter logic, it fails even when the grade and sentence-length checks pass. Ban constructions such as `just not started`, `getting up earlier held until nothing moved`, and `your calm is his calm`. Name what her son has or has not physically done and what she literally thought: `He stood beside his shoes without reaching for them.` The final read includes the brief’s readability target, average sentence under 14, zero sentences over 28, and this said-out-loud sense check.
0054
0055 **Readability targets are brief-scoped.** Default remains grade 3–5 unless the active batch tightens it. When Fish names a tighter band (for example grade 2–4), put that range in the structured brief and deterministic gate for that batch; do not silently treat a session-specific target as permission to loosen or tighten unrelated formats.
0056
0057 **Failed-solution paragraphs must be linear and direct (Fish 2026-09-04, permanent).** One attempt per beat, in this order: what she tried → why she tried it → what literally happened → why she stopped trusting it. Never jumble several methods into compressed fragments or slogan summaries. Ban `I tried everything the posts say`, `came next`, `laid it on`, `used it up`, `both helped`, and `neither stopped`. A reader should never have to reconstruct the timeline. Example: `I started getting up at 5:30 because I thought I was the problem. I wanted to be ready and calm before he got up. I still ended up yelling by the door.` Full operator card: `references/direct-failed-solution-prose.md`.
0058
0059 **No coffee anywhere (Fish 2026-09-04, permanent).** Do not use coffee as morning texture, a reaction beat, a warm/cold payoff, or filler in any native. Use a story-owned action or object instead.
0060
0061 **Meta-lesson:** a fix that changes syntax but keeps the literary SHAPE is not a fix.
0062 Directness is not compression. It is plain speech.
0063
0064 Full doctrine: `references/copy-directness-doctrine.md` · enforced by
0065 `~/.openclaw/workspace/scripts/validate_native_copy.py`
0066
0067 ## RELATABILITY GATE — no unverified qualifiers (Fish 2026-09-03, PERMANENT)
0068
0069 Fish, on the SA2 guilt native audit: "Relatability risk audit needs to be part of the written
0070 pipeline where no need to add extra qualifiers that we can't verify. Subavatars are only tied by
0071 the specific categories that we chose."
0072
0073 - The reader is identified ONLY through the sub-avatar card's categories (one experience, one
0074 emotion, the behaviors that follow). Every other detail is a qualifier, and a qualifier the
0075 reader does not share is a mother lost.
0076 - Every identification line carries a receipt: a quoted commenter or a survey verbatim in the
0077 brief. No receipt, no line. Invented items (water bottle, lunch box), invented kid temperament
0078 ("he always forgives me"), invented places (the store, dinner), clock times ("6:50", "before
0079 seven"), ages, grades, siblings, partners, a car or bus as the reader's morning: all out unless
0080 the card carries them.
0081 - Her own process is written the way the mothers state it, not compressed for rhythm: she says
0082 it over and over, nothing moves, the voice goes up, the guilt after. No count on the repeats,
0083 ever, even when the card's quote carries one ("at least twenty" is one mother's number, not the
0084 reader's). "Loud by the third reminder" and "twenty reminders" were the 9-03 misses.
0085 - The mechanism is a stated CONTRAST, never a feature line: sound fills the room and startles,
0086 a parent at the door is an order on a half-asleep kid, both spike stress hormones; the wrist
0087 is small, quiet, touches only him, gives no order, he ends it himself, so no cortisol spike,
0088 clearer head, calmer nervous system. If a reader cannot say WHY the wrist is different after
0089 one read, the mechanism is under-stated (Fish 9-03).
0090 - Owned objects must be real situations from the source research (the toothbrush with the paste on it,
0091 dry), never a staged prop (the sticky note that says "don't yell" was rejected 9-03).
0092 - **Specific failed solutions are not universal qualifiers (Fish 2026-09-04, permanent).** Visual timers,
0093 charts, rainbow clocks, getting up earlier, staying in the room, and other methods may appear only as
0094 this narrator's receipted history. Never put any of them in the reader bridge or imply every SA2 mother
0095 tried them. The reader is identified by the 1:1:1 combination only: repeated instructions until her
0096 voice rises, guilt, and apologizing after. Vary the narrator's failed-solution stack rather than cloning
0097 one master checklist across bodies.
0098 - **Failed-solution restraint + whole-morning mechanism (Fish 2026-09-04, permanent).** Never turn a native
0099 into an alarm-category catalog. For the ADHD teen-mom lane, use at most three prevalence-weighted
0100 families, in this order when all are present: (1) Mom waking him herself, (2) phone at full volume plus
0101 loud alarm clocks grouped into ONE sound family, (3) routines / bedtimes / sleep apps. Each family gets
0102 acknowledge → gap → one memorable summary in a sympathetic, educational tone. Smartwatch/fitness band,
0103 bed/pillow shaker, medication, “something else,” and “nothing yet” never become standalone lectures;
0104 use one only when the narrator or objection specifically requires it, and keep tactile failures out when
0105 they confound our mechanism. The mechanism is not “our alarm is better.” Explain the whole chain: sound
0106 fails → Mom becomes the backup → his first interaction is her order while half awake → repetition and
0107 pushback shape the next hour → a private teen-owned wrist cue removes Mom from the first step. Preserve
0108 the honest limit: the band changes how the morning begins and who owns its first action; it does not claim
0109 to erase every later executive-function problem.
0110 - **Body doubling is real but narrow.** We have a direct parent VOC receipt: "Before I started body
0111 doubling, it was just all yelling." It is not universal. Prefer the concrete action (`I stayed in the
0112 room with him for every step`) unless the exact speaker uses the term.
0113 - **"Connection over correction" is not an exact phrase in the Dawn corpus.** The underlying action of
0114 sitting with the child and trying to connect is receipted, but the slogan is not. Describe the action;
0115 do not present the label as a standard ADHD method.
0116 - **Consumer-facing source channel for Meta natives: Facebook `post/posts` only (Fish 2026-09-04).**
0117 Do not alternate among thread, forum, and post inside an ad. Internal provenance may still identify a
0118 Reddit thread or forum URL; that source taxonomy never leaks into the narrator's words.
0119 - Narrator-only devices (an owned object, a named person replying to her post) stay hers; never phrase them
0120 as something the reader has too. Authority first names may vary by body; the character's controlled
0121 credentials and mechanism function remain fixed unless the brief changes them.
0122 - BRIEF GATE (Fish 2026-09-04, PERMANENT: "how can we make sure the briefs we write follow our native
0123 rules, do not add overqualifications, follow 1:1:1, do not hallucinate things that happen and use
0124 VOC"). The body validator catches what the model added; the brief gate catches what I added, and it
0125 runs BEFORE any generation: `python3 ~/.openclaw/workspace/scripts/brief_gate.py <units.json>`
0126 (exit 1 = no run). The unit brief is structured, not prose: every scene field carries a receipt of
0127 class `voc` (verbatim substring of the corpus, thread id), `narrator` (her identity texture only)
0128 or `dramatized` (allowed ONLY in the sanctioned slots: kid lines with a corpus-hit `shaped_from`,
0129 one noticer line, the discovery chain, Dana's analogy, counted results). FAILs: card not 1:1:1 or
0130 desire not a mass desire; any field without a receipt; a paraphrase presented as a quote; a
0131 dramatized field outside its slot; qualifier scan on reader-facing fields (clock time, age/grade,
0132 count on repeats, reader's car/bus, meds/screen/bedtime/app, the 0-hit my-phrase list); sibling /
0133 partner / bus anywhere; figurative constructions in any field (simile, "handing him her own",
0134 labor metaphor, swap/mirror, personified morning, coined event label, the named strikes: builds,
0135 braced, flash of, lose the thread, leftover, the other one); qualifier nouns (water bottle, lunch
0136 box, hair, uniform, checklist, sticky note); any content word in a scene field with 0 corpus hits
0137 on every stem (my-word-in-her-slot, 7 strikes); a person noun with 0 hits; the system brief
0138 missing any exact required line (Cortese, company intro naming the brand, guarantee line,
0139 clearer head, nervous system, gives up, not a phone, the close rungs). The shared body BANNED list
0140 is imported so a same-day ruling covers briefs the same turn. Model batch:
0141 output/dawn-sa2-guilt-tof-2026-09-03 (brief-units-mid-angles.json, audit-brief-*.md).
0142 - Enforced: `scripts/validate_native_copy.py --voc <brief>` flags clock times, qualifier nouns,
0143 and identification lines with no content-word overlap with the brief's quoted material. Run
0144 it before qa-gate; a flagged line is either receipted in the brief or cut. The line-by-line
0145 receipt table is written to `audit-1-1-1.md` in the batch dir (model: dawn-sa2-guilt-tof-2026-09-03).
0146
0147 ## GATES, IN ORDER — every long-format body, every time (Fish 2026-09-04: "make sure these passes are always being ran for future copies")
0148
0149 One command runs them and stops at the first failure:
0150 `python3 ~/.openclaw/workspace/scripts/native_gates.py --units <units.json> --bodies <final/*.txt> --band mid|long --objects <obj,obj,...> [--card <subavatar-card.json> --corpus <receipt-corpus.txt> --attempt-profile <failed-solution-profile.json>]`
0151
0152 For non-default sub-avatars, the optional card/corpus/profile flags are mandatory: the runner forwards the
0153 selected card and receipt corpus into `brief_gate.py`, then forwards the attempt profile into `audit_sop.py`.
0154 The profile supports at most three ordered failed-solution families; aliases such as phone and loud alarms
0155 collapse into one family. Each family must contain acknowledge → gap → explicit memorable-summary evidence.
0156 Standalone low-frequency lanes, repeated fourth family spans, malformed profiles, grade outside 2–4,
0157 average sentences over 13 words, or a sentence over 28 words hard-fail. Stage 5 parses the receipt Markdown
0158 fail-closed, including escaped pipes, and requires `field | class | provenance | authorization`; dramatized
0159 week/count/result rows need an explicit sanctioned-slot authorization.
0160
0161 1. `scripts/brief_gate.py` on the unit briefs (BEFORE generation, and again here so the shipped brief is the gated brief).
0162 2. The batch `validate.py` per body (band, owned object, offer floor, relatability regexes, shared BANNED) and once across all bodies for cloned lines. Mixed-object batch validation will report expected object misses because `validate.py` accepts one global object; `native_gates.py` treats the per-unit runs as authoritative and fails the convergence-only call only when `CLONED` lines are present.
0163 3. `scripts/audit_sop.py` — the SOP 2.0 mechanical pass: §10 formatting numbers, §04 part word-shares, §08 reveal %, §06 dialogue:reaction pacing, §07 stack items addressed after the mechanism, §09 six weeks + counted results, §03 analogy + uniqueness link. Hard fails: reveal outside 65-82, fewer than six weeks, no analogy, no uniqueness link, a product hint in the first third, any emoji but the two 👉, bold/caps.
0164 4. `audit-sop-<batch>.md` must exist: the §11 eight killers and §13 final check answered per body BY HAND with line receipts (killers 2 shallow avatar, 4 tone switch, 7 stakes beyond the individual, 8 weak incident, and §13 voice / specificity / keep-reading are judgment, not regex). Model: output/dawn-sa2-guilt-tof-2026-09-03/audit-sop-v6.md.
0165 5. `audit-1-1-1*.md` must exist: the line-by-line receipt table (scripts model: audit_v6.py in the same batch).
0166 Then qa-gate, then Fish. A body that has not been through all five is not "done".
0167
0168 For incident-regeneration batches and Cloudflare review-page delivery, load `references/peak-incident-finalization-and-review-page.md`. It covers partial promotion from raw attempts, final-file marker checks, stale-audit repair, detector false-positive handling, believability-versus-polarization judgment, review-ready versus launch-ready status, and live production verification.
0169
0170 When a reader flags foreign phrasing, confusing mechanism reactions, overqualified bridges, cloned failed-solution stacks, source-channel drift, or filler texture, load `references/readability-relatability-repair.md`. It separates direct VOC from dramatization and model synthesis, then gives the concrete-language repair and verification sequence. For the final paragraph-by-paragraph semantic gate after mechanical SOP validation, also use `references/directness-and-jumble-final-pass.md`; it catches unclear speaker turns, chronology, pronouns, compressed causality, and callbacks that numeric readability misses.
0171
0172 INCITING INCIDENT (Fish 2026-09-04, PERMANENT): the incident is written at the PEAK OF BELIEVABILITY, not at the average
0173 morning, as long as everything before it (the world, the stack, the toll) is verified and believable so the reader has
0174 already decided the narrator is real when the peak comes. The OBJECT keeps its VOC receipt; the PEAK is a dramatized slot
0175 (`incident_peak` in the unit brief, receipted with the VOC lines it is shaped from). Visceral and physical, nobody new
0176 enters, nothing invented outside her, her son and the object. SOP §11 killer 8 is checked against this bar, not the
0177 average morning.
0178
0179 ## SAID-OUT-LOUD TEST (Fish 2026-08-25 — PERMANENT, applies to every native)
0180
0181 Every narrator line must read as something the narrator would literally say out loud to
0182 another mom. Proof source: the raw Reddit parent threads this lane is mined from — real
0183 moms state what happened, flat and direct, zero symbolism. Kill on sight:
0184 - composed parallel rhythm ("A fight at 11. A job at 6:45.")
0185 - announcer transitions ("Here is the part nobody warned me about.")
0186 - mirrored abstractions ("the phone moved in, the job moved onto me")
0187 - report language ("came with tension" -> say "turned into a thing")
0188 - analogies and similes ANYWHERE in body or hooks ("like I am arresting him")
0189 - symbolism of any kind; describe directly what is going on instead
0190 - coined event labels ("the 11 o'clock handover", "phones sleep in the kitchen") — name the literal action every time
0191 - personification ("the phone slept in my room") — objects charge, sit, go places; only people sleep. Exception: verbatim Reddit VOC quoted as-is
0192 Run this as a dedicated pass after drafting, separate from and in addition to the humanizer pass.
0193
0194 **HOOK OPENING — TWO LEGAL FAMILIES (Fish 2026-08-31, amends the 8-25 first-person-only rule):**
0195
0196 1. **First-person lived action** — "I/My/We" + concrete action. The 8-25 rule, unchanged. ("I used to make three trips up the stairs before 7am.")
0197 2. **Second-person symptom flag** — "If your [observable symptom]..." Fish 8-31: **"allow the 'if your' hook family, that's what converts."** Receipt: `adhd convenience slop 7` opens "If your ADHD teen 'can't' wake up to alarms, you're not dealing with a discipline problem" and is the account's biggest converter ($14,475 spend, 493 purchases, $29 CPA). Independently confirmed as the dominant device across SPNutrition's catalog (their #1 hook by impressions is a symptom flag).
0198
0199 Everything else in the said-out-loud test still binds on BOTH families: no analogies, no composed parallel rhythm, no announcer transitions, no coined event labels, no personification. A flag hook still names a CONCRETE observable ("sleeps through every alarm", "has a psychiatrist, a therapist and a 504 plan"), never a vague state ("struggles in the morning").
0200
0201 **Still banned:** the third family — pure mystery/curiosity openers that flag nobody. That is the unaware-pulling shape the awareness gate parks and the failure mode behind our expensive-click ads.
0202
0203 ## DawnBands Selling Doctrine — Mandatory
0204
0205 Before writing, briefing, editing, or auditing any DawnBands native, read:
0206
0207 `/Users/ayden/.openclaw/workspace/knowledge/brands/dawnbands/selling-root-cause-mechanism.md`
0208
0209 It is the canonical consumer-facing mechanism doctrine for every mode and overrides older claim-safe-only framing that reduces DawnBands to “a different cue placement.” Future DawnBands copy should use the full causal chain where format permits:
0210
0211 `circadian delay → sleep debt → auditory gating → sleep inertia / half-awake automatic behavior → Mom becomes the emergency pathway → Somatic Wake Bypass™ → Wrist-First Handoff™ → relationship + independence payoff`
0212
0213 Aggressive biological simplification is allowed and desired for the selling layer. Keep exact-SKU performance, testimonial timelines, offer facts, and customer outcomes tied to receipts; do not let provenance review flatten the root cause or mechanism into generic feature language.
0214
0215 ## ⛔ AWARENESS SCOPE GATE — UNAWARE LANE PARKED (Fish 2026-08-31, binding until he lifts it)
0216
0217 **DawnBands runs PROBLEM-AWARE and warmer only. Do not write, brief, or recommend unaware-audience copy.**
0218
0219 Fish's reason: the market isn't there yet and we cannot scale at the CPA unaware traffic requires. This is a business-math ruling, not a craft judgment — the formats below are not "bad," they are unaffordable right now.
0220
0221 **PARKED (do not use, do not propose):**
0222 - **T3 unaware study-reveal** — parked entirely (it was always the unaware template, and it had no spend receipt anyway; every stat/study-hook ad we launched starved).
0223 - **The unaware application of T1 / Mode B**, including the zero-category-scent cold opener strategy built for readers who don't know they have the problem.
0224 - **ONLY the unaware-specific device in the Alevia corpus: the zero-category-scent mundane-object cold open** ("mundane object + weekday + month + place-name in sentence one, zero product scent"). That opener is engineered for readers who do not know they have the problem, and it is exactly the artifact-open trap — it withholds the TARGET. Parked for our traffic.
0225
0226 ⚠️ **DO NOT over-park Alevia (Fish 2026-08-31).** The audience is parked, the CRAFT is not. `alevia-live-anatomy-2026-08-12.md` is measured across 240 live copies and stays fully in force for problem-aware work. Keep using, unchanged:
0227 - **The P.S. ladder** — 217/240 of their copies close on stacked postscripts, and this file calls it "our biggest structural gap." Rungs each have a distinct job: P.S. = rupture-object return · P.P.S. = guarantee naturalized in-voice · P.P.P.S. = objection/placebo kill in-voice · final P.S. = reader-direct-address AS the CTA · then a **bare 👉 link on its own line AFTER the final coda, no CTA copy around it.** Note the link comes LAST, after the postscripts, not before them.
0228 - **The spoken-word reveal mechanic** — the product never enters as a decision. It enters as a word spoken by a named third party inside the story.
0229 - **The discovery chain** — article → forum thread → named stranger's comment → skeptical read → try. Narrating the chain does DR work: relatability plus implied social proof without making a claim.
0230 - **Category-then-brand split** — mid-story reveal names the category, the brand surfaces at the close.
0231 - **Priced failed-solution stacks** (70/95 of their primary copies), and their register hygiene: near-zero emoji, near-zero ALLCAPS, no comment-bait in the witness lane.
0232 - **Format-page discipline** — never cross formats across page identities.
0233 - **Unaware-pulling hooks:** pure mystery/curiosity openers that don't flag who the reader is. (This is the same failure the 8-31 SPNutrition analysis found from the conversion side: unqualified clicks. The awareness ruling and the targeting-clarity learning agree — hooks must name the reader by her observable symptom.)
0234
0235 **STILL LIVE (unaffected):**
0236 - **T2 compressed witness** — problem-aware, and our ONLY scaled winner (fable-v10, $29.70 CPA). Never park this.
0237 - **T4 punch**, all Mode A work, objection killers, product-aware and offer-aware copy.
0238 - **T1 / Mode B when briefed to PROBLEM-AWARE traffic** — the architecture is legal, the unaware targeting is not.
0239 - The Layer 3 review check "is this written to the RIGHT stage?" stands and now has a narrower legal range: problem-aware → offer-aware.
0240
0241 ## ⛔ LONG-FORMAT ARCHITECTURE = SOP 2.0 (Fish 2026-09-03, PERMANENT: "follow the doc and what it says. It is more true.")
0242
0243 Every long-format native (anything over the T4 punch band) is written and validated against
0244 `references/long-format-native-sop-v2-contract.md`, the binding distillation of Zakaria's Long-Format
0245 Native Ad SOP 2.0. It wins over the Alevia-derived witness contract, the T1/T2 budgets, the
0246 victory-as-absence rule, the 55-70% reveal window, Mode B paragraph prose, and the analogy ban
0247 INSIDE the authority's mechanism dialogue. Load it before outlining. Structure in one line:
0248 hook (1-3) → the world (4-150) → inciting incident + authority (150-200) → mechanism through
0249 dialogue (200-400) → objections as story (400-500) → reveal at 75-80% by the authority (500-550)
0250 → week-by-week results ending on the relationship resolution (550-650) → close on loss, the honest
0251 line, guarantee, the "If by" ladder, 👉 link, the fork, thank-you, signature, P.S. ladder (650-700).
0252 Alevia paragraphs (2-4 sentences), quoted dialogue, clinician authority allowed, counted results, narrator
0253 identity block with her numbers (Fish 9-03 rulings after the measured Alevia comparison, see the contract's
0254 "Alevia deltas ruled in"). Fences that stay: no invented science, reader-side relatability gate, unaware
0255 lane parked, offer floor.
0256
0257 ## Mode Selector — Mandatory
0258
0259 Choose the format before writing. Do not blend architectures by accident.
0260 **Check the AWARENESS SCOPE GATE above before selecting any template.**
0261
0262 ### STRUCTURE TEMPLATE — ALWAYS ASK FISH FIRST (binding, 2026-08-23)
0263
0264 Four locked structure templates live in `references/native-structure-templates.md`
0265 (T1 Mode B Jacob-refined 3,200–4,000w · T2 compressed witness 800–1,100w · ~~T3 unaware
0266 study-reveal 550–700w~~ **[PARKED 8-31 — unaware lane]** · T4 punch 250–400w — each with per-section word budgets and
0267 reveal/CTA position markers). **Before writing ANY native, ask Fish which template to
0268 use** — one question, up front, per ad or per batch. Skip the question ONLY when the
0269 request or an outline handoff already names the template (the handoff format is in that
0270 reference). Fish's standing workflow: he picks the template and writes the section
0271 outline; the copywriter fills prose to the budgets and verifies word count, reveal %,
0272 and (T1) CTA position against the template before qa-gate. Never silently substitute a
0273 different structure than the one named.
0274
0275 ### Mode A — Standard native execution
0276
0277 Use the existing validated-brief, compressed Avelia T1/T2/T3, objection-killer, short, and mid-form workflows in this skill. This is the default only when neither the brief nor the supplied controls clearly selects long-form witness architecture.
0278
0279 ### Mode B — DawnBands Long-Form Witness Native
0280
0281 Use when the brief explicitly selects **DawnBands Long-Form Witness Native** mode **or when the user's supplied samples unambiguously specify that format**: roughly 2,500–4,000 words, first-person personal anecdote/witness story, a lived chronology before mechanism, and a late product reveal. “Like these samples” is a format instruction even if the user never types the internal mode name.
0282
0283 Before choosing Mode A for a sample-led request, measure the controls' word counts, narrator type, and first product-name percentage. Never compress 3,000-word personal-story controls into 200–700-word ownership arguments merely because the request also asks for different personas, angles, or root causes.
0284
0285 Load `references/control-format-selection-and-pilot-gate.md` for the control-measurement, narrator-selection, pilot, and back-half diversity gates.
0286
0287 Before outlining or drafting, load `references/dawnbands-long-form-witness-native.md` and obey its narrator-authority, provenance-ledger, 2,500–4,000-word target, reveal-window, cue-vs-waking, outcome-timeline, recurring-motif, and DawnBands claim-ceiling gates.
0288
0289 Do not treat a 500–700-word ownership ad as Mode B. Do not force Mode B onto product-aware traffic or compressed Avelia T1/T2/T3 briefs.
0290
0291 ### Mode B first-draft execution (when intentionally selected)
0292
0293 1. Load `references/dawnbands-long-form-witness-native.md`, `references/mode-b-first-draft-checklist.md`, and `references/control-format-selection-and-pilot-gate.md` before outlining. For measured live-account structure updates (paragraph-prose ruling, reveal distribution, spoken-word reveal mechanic, P.S.-ladder close variant, opener ceiling), also load `references/alevia-live-anatomy-2026-08-12.md`.
0294 2. Select narrator mode from the actual request and controls. When no verified Dawn buyer receipt exists, **ownership-voice** remains safest for argument-led work; however, when Fish explicitly asks for personal anecdotes or supplies first-person witness controls, use internally labeled **authorized-dramatization** rather than flattening the format into detached ownership prose. Keep behaviors research-grounded and never invent DawnBands outcomes, medical authority, quantified proof, or a named fake testimonial.
0295 3. Fill the internal YAML contract first: submode, narrator mode, motif, primary + ≥1 secondary open loop, reveal target, exact-SKU claim classes, offer_policy_verified, product_outcome_receipt null/ID.
0296 4. Draft to file under `output/.../copy/` with **Fable authoring in-session as the default copywriter** (amended 2026-08-12 — the only scaled winner, fable-v10, was a Fable draft; Grok/another model only when Fish explicitly names one). Preserve the exact first draft as a separate immutable artifact before review. Count primary-text words and first product-name % after every expand pass. Mode B floor is **2,500 words** — do not ship under-floor drafts labeled Mode B.
0297 5. For multi-ad Mode B batches, draft and audit one complete pilot before scaling. Read the opening, reveal window, and close; a good hook does not excuse a detached or cloned back half. After scaling, compare product bridges, mechanism lists, offer cadence, CTA scaffolds, and motif returns across the whole batch. If they converge, preserve the fronts and run same-model surgical back-half rewrites.
0298 6. Offer block: verify current price + refund terms. Prefer unambiguous **60-night money-back** language. Omit **100% wake-up guarantee** unless legal/substantiation approved it as a named refund policy and the line is clarified as refund terms, not universal waking efficacy.
0299 7. Victory = desired absence / test frame unless a same-speaker product receipt exists. No invented week-by-week results.
0300 8. After the immutable first draft, run the **Surgical Review Pass** (section 7): one line-edit pass against the four layers + format + hook criteria. GPT roast / Sonnet comparison artifact only on the section-7 escalation triggers (new-lane pilot, Fish request, structural failure). The Opus taste pass is retired. Fish’s explicit model request wins.
0301 9. For artifact freezing, hashes, measured QA, narrator-provenance review, provider retry, and the three-column Cloudflare comparison report, load `references/model-routed-copy-review.md`.
0302 10. Worked ownership-voice Mode B example: `/Users/ayden/.openclaw/workspace/output/dawnbands-native-2026-07-19/copy/ad-21-door-memory.md` (architecture reference only — do not clone lines; its routed review found pooled-VOC narrator risk, so it is not a spend-ready testimonial model).
0303 11. **Reading deliverable:** When Fish wants to read a finished Mode B / long native, ship a **public Cloudflare Pages URL** (not only a workspace path). Recipe in `references/mode-b-first-draft-checklist.md` → Delivery. Dedicated Pages project per report — never clobber an unrelated batch field-report project.
0304
0305 ## Native-First Priority (Fish, 2026-07-19)
0306
0307 For ad prose, optimize in this order:
0308
0309 1. **Sounds native** — like a real post or lived thought, not a copywriter performing authenticity.
0310 2. **Story architecture is coherent** — rupture, escalation, discovery, mechanism, reveal, and payoff form one causal chain; each beat makes the next beat necessary.
0311 3. **The mechanism makes sense and sells** — for DawnBands, use the canonical Deep-Sleep Signal Lock biological stack, explain why repeated sound failed, then make the tactile bypass and Wrist-First Handoff feel inevitable. Do not neuter it into feature-only “different channel” language.
0312 4. **Breakthrough Advertising strategy is active** — channel existing mass desire, match awareness and sophistication, complete the belief chain, externalize the villain, and use the mechanism/proof depth the market requires.
0313 5. **Product arrives naturally** — the reader should understand the needed solution before the product appears; never announce the sales pivot.
0314 6. **Conversion language stays invisible** — preserve useful roughness, ordinary phrasing, and human irregularity. A more polished sentence is a regression when it sounds more like an ad.
0315 7. **Coherence beats cleverness** — remove quote-card abstractions, theatrical metaphors, internal QA language, and obvious objection-module formatting.
0316
0317 Sonnet polish is not a beautification pass. It may tighten drag and repair flow, but it must not sand the copy into perfect sales language or weaken the story, mechanism, awareness match, sophistication match, belief chain, or proof logic. Final read tests:
0318
0319 - **Would this sound natural if the target avatar posted it without knowing she was writing an ad?**
0320 - **Does every story beat advance the belief chain?**
0321 - **Does the mechanism make prior failure and the product's bounded role feel logically inevitable?**
0322
0323 ## Existing Native Review — Full Context Intake
0324
0325 When reviewing, revising, or explaining an existing DawnBands native, do not stop at the public/rendered copy. Verify and read the source stack that produced it: current skill rulings, format contract, current avatar/sub-avatar work, structured unit brief, prompts, brand truth, VOC receipts, final copy, and its human + deterministic audits. Keep current governing doctrine separate from historical examples and archived research.
0326
0327 For the exact intake order, Evolve source map, inciting-incident precedence, and minimum existing-batch artifact set, read `references/dawnbands-context-intake-and-precedence.md`.
0328
0329 ## Canonical Source Sync
0330
0331 This Hermes skill has a Claude Code counterpart at `/Users/ayden/.openclaw/workspace/.claude/skills/native-copy/SKILL.md`.
0332
0333 Cadence amended 2026-08-12: run this comparison WEEKLY or when output looks off-doctrine — not
0334 before every run (it was a per-run process tax with near-zero catch rate).
0335 1. Compare the Hermes and Claude Code versions for drift.
0336 2. If the Hermes skill is missing or incomplete, consult the Claude Code version before writing.
0337 3. If they differ, use the newest writing doctrine from the Claude Code version while preserving Hermes-specific safety and tool instructions from this skill. Never silently rely on a stale imported copy.
0338 4. When checking adjacent integration configs, never print credential values. Report only presence, validity, and source path.
0339
0340 ## Workflow
0341
0342 ### 0. Read Competitive Landscape (MANDATORY)
0343 Read `knowledge/research/competitive-landscape.md` — contains saturated angles (HIGH CPM, avoid), white space angles (LOW CPM, prioritize), competitor hooks to steal/counter, and positioning rules. This step is NOT optional.
0344
0345 If a doctrine path has moved, search the workspace for the filename before concluding it is missing. Once the canonical location is verified, update this skill rather than silently skipping the gate.
0346
0347 **Before writing ANY copy, verify:**
0348 - The angle you're writing is NOT in the "Saturated Angles" list (or has a clear differentiation plan)
0349 - You're prioritizing white space angles (60%+ of new batch)
0350 - You're not duplicating a competitor's exact hook or framing
0351 - You're incorporating at least one stolen copy device (adapted to our positioning)
0352
0353 ❌ NEVER write another "I shake my ADHD child awake" ad — that's Nymera's saturated lane
0354 ❌ NEVER write all-fear copy with zero aspiration — every competitor does that, we differentiate with hope
0355 ❌ NEVER skip this step. Copy written without competitive context = wasted tokens
0356
0357 ### 1. Read the Brief
0358 Read `references/master-brief.md` — contains everything: avatar, mechanism, format rules, Zak framework, dead angles, copy killers, headline rules, targeting rules.
0359
0360 ### 2. Check the Gold Standard
0361 Read `assets/gold-standard-example.md` — correctly formatted variants with headlines. Match this format exactly.
0362
0363 ### 3. STANDING NATIVE TEST LAYOUT (Fish, 2026-08-23 — supersedes the same-day 3×3 grid and the old 5-variant default)
0364 Every native test unit ships as:
0365 - **1 body script** — one desire × one sub-avatar × one message. Length set by what the angle needs (7-22 no-caps ruling); template still ALWAYS asked (Mode Selector).
0366 - **3 hook variations** — line 1 swapped on the same body, each graded on the hook taxonomy (structure named, curiosity/validation mixed). Hooks are the copy-side test lever.
0367 - **5 image concepts** — the primary creative lever (receipt: image swap moved fable-v10 + its sniper test hard). Scrape-first per native-image-gen; mix concepts across the operator families: contradiction pair (two objects that don't belong together, zero copy on image), problem-proof "help-post" shot, artifact/rupture object, straight rip. No product, no text overlay, phone-photo register.
0368 - **2+ headlines authored — ALL load as title options at launch (Fish 2026-08-25 + 2026-08-29, supersedes the 8-23 "picks ONE, never split-tested" rule).** Meta standard ads take up to 5 titles. Every hook and every headline rides in at launch via the solved multi-text construction. Nothing waits for a pick.
0369 - **Length variants are a legal test axis inside one unit (Fish 2026-08-31).** A unit is one ARCHITECTURE (one desire × one sub-avatar × one message); long/mid/short cuts of that architecture ride as body slots in the multi-text stack (Meta caps at 5 bodies — spread them so every length and every hook appears at least once). This does not license two different angles in one unit.
0370 - **Validated structured brief:** the brief's `goal.variant_count` / `output_contract` still override when explicit.
0371
0372 ### 3a. OFFER FLOOR — every native ships with a complete close (Fish 2026-08-31, BINDING)
0373
0374 Receipt: `v11-a-unassigned-hour` drew a 4.13% link CTR at $0.92 CPLC with NO brand name, NO offer, and NO link anywhere in the body. Clicks were manufactured by withholding every resolution; CPA landed $46-56. Every ad that actually converts in the account (fable-v10, r2-d2-roommate, slop 7, the offer-ad family) carries a complete close.
0375
0376 **REQUIRED in every native body, every length, every destination:**
0377 1. **Brand named at the reveal** — "Dawn Bands", two words. A body that never names the brand is not a native, it is a click generator.
0378 2. **The guarantee, stated plainly** — "100% wake-up guarantee. 60 nights." Say what it means in her language at least once ("60 nights to let it prove it on school mornings"). The guarantee, not the price, is the mandatory risk-reversal element.
0379 3. **Company/credibility intro, 2-4 lines — and it MUST NAME THE BRAND as its subject** (Fish 2026-08-31, second ruling). Write "Dawn Bands is a small company and this is the only thing they make." NEVER "The company that makes it is small" or "The company is small" — an anonymous company intro is a floor FAILURE, not a stylistic choice. Receipt: in the 8-31 model bake-off, 3 of 5 drafts satisfied "brand at reveal" and "company intro" as separate items and produced an orphaned, brandless credibility block. The brand name has to be the subject of that sentence. Small-operator framing beats corporate framing; carry the quality reason into a natural availability consequence.
0380 4. **At least one link.**
0381 5. **P.S. ladder + TWO CTAs — allowed and encouraged on long copies** (Fish 2026-08-31). Close order is now fixed:
0382
0383 `body → CTA #1 with link → P.S. ladder → CTA #2 with link`
0384
0385 **One CTA before the postscripts and one after** (Fish 8-31, third ruling). This amends the Alevia measured default of link-last-only — their ladder ends on a single bare link; ours brackets the ladder so a reader who stops at the first postscript still has a live link above them and a reader who reads to the end gets another. Rungs, per the Alevia shape: P.S. = rupture-object return · P.P.S. = guarantee naturalized in-voice · P.P.P.S. = objection kill in-voice · final P.S. = reader-direct-address. Optional on short/punch formats.
0386
0387 **OPTIONAL — use when it earns its place:** price ($49 may be woven in or omitted; Fish 8-31: the offer and guarantee are required, the number is not), sale/availability framing, the narrator's own purchase beat, P.S. ladder.
0388
0389 **DESTINATION:** listicle and PDP both convert. The floor is identical for both. A listicle ad must be FULLY CONGRUENT with the page it lands on — same claim ceiling, same mechanism, same offer terms. Incongruence kills listicle traffic, not the destination type itself.
0390
0391 **Variation lives in HOW these are woven into the story, never in WHETHER they exist.** This supersedes master-brief's CTA-variation permission "No mid-copy CTA at all — just the close CTA" where it would leave a body with no close. The price-omission permission survives; the missing-close permission does not.
0392
0393 #### Reference close-block shape (SPNutrition-measured; adapt the register, never the lines)
0394 1. Company intro: small company, limited batches, the quality mechanism restated in plain words, contrasted against the cheap category default.
0395 2. Quality → availability consequence: that level of care takes time, which is why restocks take weeks.
0396 3. Current availability plus the narrator's own action ("I ordered a second one").
0397 4. Guarantee in plain language: the window, what happens if nothing changes, no questions asked.
0398 5. Conditional future-pace ladder: "But if it works? If by [early marker]... If a month from now [the desired absence]?" Three escalating conditionals, each a desired ABSENCE, never a promised outcome.
0399 6. Link.
0400 7. Closing callback returning to the hook thesis in one line.
0401
0402 Claim gates unchanged: the ladder stays conditional and absence-shaped so it never becomes an invented outcome timeline. Never invent batch sizes, customer counts, stock levels, or sale end dates. Availability language must be true at launch or omitted.
0403
0404 #### Validated Brief Execution Mode
0405 When the user supplies a validated brief batch (for example `briefs.json`), treat each brief as an executable contract:
0406 1. Extract only the requested brief IDs rather than bulk-loading the whole batch into context.
0407 2. Follow the brief's exact word range, fields, destination type/URL, CTA, awareness, mechanism-delivery mode, and output path.
0408 3. The newest live evidence source governs claims: an exact-SKU/product-mechanism report or current policy receipt overrides an older brief, canonical product block, gold standard, or brand-doctrine example. If sources conflict, stop the affected claim, record the contradiction, and use the narrower live claim ceiling rather than silently inheriting the older language.
0409 4. Preserve exact offer wording/order only after verifying that the current policy and newest live claim report authorize both the terms and the consumer-facing implication. For DawnBands, do not mechanically carry `100% wake-up guarantee. 60 nights. $49.` from an older brief when a newer report treats guaranteed waking or exact-SKU efficacy as unsubstantiated. If the policy is verified but the name could imply universal efficacy, distinguish the refund-policy terms from an outcome claim and flag for legal/substantiation review.
0410 5. Include a compact declaration block and source VOC IDs when required so the artifact is auditable.
0411 6. Do not invent customer outcomes, timelines, reviews, or first-person testimonials to satisfy a story format. Use supplied VOC as attributed evidence, or write a clearly non-testimonial POV/ownership argument that does not claim an unverified result. If no product outcome is evidenced, express the victory as the avatar's desired absence rather than claiming it happened.
0412 7. Even when a brief labels the entry door a mechanism reveal, line 1 must still open on a lived artifact, contradiction, or emotional tension. Reveal product/mechanism only after the hook.
0413 8. Write only the authorized deliverables. If the scope ceiling names ad files plus one manifest, do not add strategy reports, research notes, or extra artifacts.
0414 9. Run deterministic validation ONCE after the surgical review pass (and again only if a later edit touches the text): actual primary-text word count, required fields, offer order normalized across line breaks, destination, banned claims/price, em dashes, line format per the mode-scoped rule in the Format Validation Pass (sentence-per-line for Mode A; paragraph prose for Mode B), dialogue isolation, declared VOC IDs. SHA-256 manifest hashes are required only when the validated brief's contract demands a manifest — not on ordinary batches (cadence amended 2026-08-12; the after-every-edit loop was pure process tax).
0415
0416 Reusable execution detail lives in:
0417 - `references/lived-first-person-native-copy.md` for repairing detached analyst voice into lived first-person native copy without inventing a customer outcome.
0418 - `references/validated-brief-execution.md` for authority order, truth-safe POV writing, and deterministic per-ad QA.
0419 - `references/validated-brief-batch-contract.md` for authority order, scope discipline, claim-safe POV handling, canonical-offer line breaks, and deterministic manifest QA.
0420 - `references/brief-driven-batch-validation.md` for the existing brief-batch validation checklist.
0421 - `references/native-proof-and-architecture-overlays.md` for testimonial provenance, long-form-vs-compressed architecture, live-Meta evidence use, cross-ad convergence, and the repair/re-QA sequence.
0422 - `references/long-form-native-comparative-audit.md` for read-only batch audits against winner copies, a live long-form SOP, and live avatar/mechanism reports; it defines source precedence, deterministic reveal measurements, device/per-ad matrices, structural-vs-provenance separation, and brand-doctrine output.
0423 - `references/consolidated-native-ad-repair-pass.md` for repairing a requested ad subset from multiple QA reports, truth-safe conversions, blocker-specific assertions, and final manifest/hash revalidation.
0424 - `references/controlled-live-meta-repair.md` for repairing a brief-driven batch under a strict file ceiling while adding a small number of controlled live-evidence mechanism lanes without cloning winner copy.
0425
0426 ### Editorial truth gate before paid creative generation
0427
0428 Deterministic PASS is necessary but not sufficient. Before image prompts or paid generation:
0429 1. Run a flags-only editorial/source-fidelity audit across the whole batch.
0430 2. Treat synthesized first-person scenes, unsupported precision, altered quotations, invented dialogue, and composite timelines as blockers even when every underlying behavior is VOC-backed.
0431 3. Convert blockers to attributed VOC, explicit hypotheticals, paraphrases without quotation marks, ownership arguments, or desired-absence framing.
0432 4. Run a separate cross-ad convergence check for mechanism sentences, product descriptions, narrator cadence, analogies, victory images, and CTA scaffolds.
0433 5. If a new SOP or live performance export appears while QA is running, add one overlay audit and then make a single consolidated repair pass rather than rewriting the batch repeatedly.
0434 6. Consolidate repairs into ONE pass, then re-run deterministic validation and editorial QA once on the repaired batch (amended 2026-08-12 — not after every individual edit).
0435 7. Keep image generation gated until the repaired copy passes.
0436
0437 ### 3.5 Multi-Angle Batch Architecture
0438
0439 When Fish asks for many ads with different personas, angles, stories, root causes, or mechanism routes, do not rely on a prose instruction to “make them different.” Build a row-per-ad diversity matrix first, then route bounded model lanes from that shared matrix.
0440
0441 Load `references/multi-angle-batch-routing-and-repair.md` for:
0442 - required matrix dimensions
0443 - dominant-root-cause distribution
0444 - raw-versus-final artifact structure
0445 - deterministic and editorial convergence checks
0446 - same-model surgical repair when a full agent prompt is too expensive
0447 - public batch report delivery
0448
0449 Truth and provenance rules stay in the hidden brief. **Never let them leak into consumer copy** as lines about not inventing reviews, not promising outcomes, avoiding fake stories, or clarifying internal claim policy. Replace that leakage with natural skepticism, a bounded test, risk reversal, or avatar-native objection language.
0450
0451 ### 4. Write Variants
0452 Each variant uses a different angle from the 4-type framework:
0453 1. **Story/Resignation Arc** — first person narrative, resignation moment, discovery
0454 2. **Objection Killer** ← TOP PERFORMER (Mar 2026). Write 2 per ad when possible. "Another alarm? Sure." energy converts.
0455 3. **Pain-First → Mechanism Reveal** — vivid daily pain, mechanism in the middle
0456 4. **Consequence/Future Fear** — what happens if nothing changes
0457 5. **(If needed) Risk Reversal + Social Proof** — reviews + guarantee forward
0458
0459 **Mode A length (Fish 2026-08-23 test layout):** ONE body per test unit; pick its length by how much DR work the angle needs (150-300w short, 500-700w mid, 800-2,100w long band — no caps). Variation budget goes to hooks (3) and images (5), not parallel bodies. **Mode B** uses `references/dawnbands-long-form-witness-native.md` (2,500–4,000 words) and is never satisfied by a 500–700-word draft. See also `references/mode-b-first-draft-checklist.md`.
0460
0461 Each variant needs:
0462 - **Headline** (Meta `title` field)
0463 - **Body copy** (Meta `body` field)
0464 - **Destination URL** (listicle, not PDP)
0465
0466 ### 5. Format Validation Pass (MANDATORY)
0467 After writing ALL copy, do a final scan.
0468
0469 **Line format is MODE-SCOPED (corrected 2026-08-12 per the 7-31 Mode B ruling):**
0470 - **Mode A / compressed natives / static primaries:** every line = 1 sentence (2 max if flow
0471 demands it); NEVER 3+ sentences on one line.
0472 - **Mode B / long-form witness:** PARAGRAPH prose — 2–4 sentences per paragraph (~25–40 words),
0473 blank line between paragraphs; staccato single-lines only at punch moments. One-sentence-per-
0474 line formatting in Mode B is a format defect, not a style choice
0475 (`references/alevia-live-anatomy-2026-08-12.md`).
0476
0477 All modes:
0478 - No em-dashes
0479 - No emoji except 👉 on CTA links (and the T4 checklist template, where ✅ is the register)
0480 - Dialogue isolated on its own line
0481 - No dead angle hooks (mechanism-first, generic features, curiosity bait)
0482 - No copy killers ("game changer", "literally", "amazing", vague future pacing)
0483
0484 ### 6. Hook Sharpening Pass (MANDATORY)
0485 After writing all variants, re-read every hook (line 1 of each variant's body copy). Grade each:
0486 - **WTF?** Does it stop scroll? Does it create a question she HAS to answer? Would she screenshot it and send it to a friend?
0487 - **Specific?** Does it contain a concrete detail (number, name, object, timestamp)? Generic hooks die.
0488 - **Gap?** Does it open a loop that can only be closed by reading more?
0489 - **Taxonomy (Fish 2026-08-23, `~/.openclaw/workspace/knowledge/hook-taxonomy.md`):** name the emotion it fires, the stake on the table, and the structure — **Promise** (bold claim upfront, exceptionally clear) or **Loop** (key detail withheld). "Both/neither" = rewrite. Execution screen: zero backstory required, starts in action, no clutter — when in doubt, dumb it down.
0490 - **Targeting clarity (Fish 2026-08-31, the 5th grading question):** could a stranger tell from lines 1-2 whether this ad is about HER house? Name the observable symptom or daily job it flags. "It builds intrigue" is not an answer. A Loop hook is only legal when the withheld information is about the READER'S OWN situation, never generic mystery. Receipts: native1 24.8% CTR / 0 purchases; v10 body $8,267 at $51 CPA opening on a victory brag that reaches identification nine lines down; slop 7 flags her in line 1 and closes at $29 CPA on $14,475.
0491
0492 **If a hook fails any of these, rewrite it before submitting.**
0493
0494 Common hook failures to catch:
0495 - ❌ Too bare: "He set it himself." → needs the MOMENT: "I walked past his room. He was adjusting something on his wrist. He didn't know I was there."
0496 - ❌ Too generic: "I used to be the kid everyone had to wake up." → needs the SPECIFIC story: "I slept through a fire alarm at a sleepover. Everyone thought something was wrong with me."
0497 - ❌ Too subtle: "I just didn't go in." → needs the CONSEQUENCE: "One morning I didn't go in. By 11:40 the school called me."
0498 - ❌ Statement without tension: "His teacher emailed me last week." → needs the CONTENT: "His teacher emailed me two words: 'perfect attendance.' I stared at my phone for ten minutes."
0499 - ❌ Product listing as hook: "Sonic Boom bed shaker. $45." → needs the TOTAL + tease: "$380. That's what I spent before someone told me they all use the same pathway his brain blocks."
0500
0501 **The hook is the only line that matters at scale. If it doesn't stop scroll, the rest is irrelevant. Spend more time on hooks than on any other part of the copy.**
0502
0503 ### 7. Surgical Review Pass (MANDATORY — one pass, line edits only)
0504
0505 **(Restructured 2026-08-12, Fish-approved lean pipeline.)** The old mandatory multi-model
0506 stack (separate Sonnet full-polish artifact + GPT roast + optional Opus) ran up to seven
0507 text-mutating passes per ad. The only scaled winner (fable-v10, $5.4k @ 2.28 lifetime) never
0508 went through it, and this skill's own Native-First rule says a more polished sentence is a
0509 regression when it sounds more like an ad. Rewrite passes sand off the native roughness that
0510 IS the format.
0511
0512 The default is now ONE review pass:
0513
0514 - Save the exact first draft unchanged (immutable, one file copy — keep this).
0515 - The drafting model re-reads the draft against the **four layers below** plus the Format
0516 Validation Pass and the Hook Sharpening criteria, and fixes findings as **line edits** —
0517 never a top-to-bottom rewrite. Blockers (claim/provenance/offer/format) MUST be fixed;
0518 taste flags are logged for Fish, not auto-applied.
0519 - Output: the repaired artifact + a short blocker/change log. Not three artifacts.
0520
0521 **Conditional escalation** (any of these, not by default): a NEW angle or lane's pilot ad,
0522 Fish asks for it, or the surgical pass finds structural failure (rebrief-level problems):
0523 - **GPT challenger roast** — decision memo on original + repaired, never a silent rewrite.
0524 - **Sonnet full-polish artifact** — only when Fish explicitly wants a comparison version.
0525
0526 **Humanizer (amended 2026-08-12 with Fish's approval — supersedes the 2026-07-20 always-on
0527 rule):** run the humanizer pass only when (a) the draft came from a model other than Fable,
0528 or (b) the repaired draft fails a native-read spot check — read the opening 8 lines and one
0529 mid-story passage cold: would this pass as a person posting? Fable in-session drafts that
0530 pass the spot check ship without the humanizer. All DR beats are preserved whenever it runs.
0531
0532 The review layers (the checklist for the surgical pass):
0533
0534 **Layer 1: Hook Audit**
0535 - WTF factor (1-10). Anything below 7 = flagged with rewrite suggestion
0536 - Is it something she's heard before? Check against hook bank dead list
0537 - Does it open a gap only the copy can close?
0538 - ❌ NEVER pass a hook that reads like a headline. Hooks = native voice, not ad voice.
0539
0540 **Layer 2: Copy Quality**
0541 - Flag AI-sounding language (graveyard, journey, struggle, battle, warrior, game-changer, literally)
0542 - Flag weak/filler lines that don't earn their space
0543 - Flag soft CTAs or templated CTA blocks
0544 - Flag pacing issues (too many long sentences in a row, no breathing room)
0545 - ❌ NEVER just say "this line is weak." Provide the replacement line.
0546
0547 **Layer 3: Framework Alignment**
0548 - Awareness level: is this written to the RIGHT stage? (unaware ≠ solution-aware)
0549 - Mechanism: is it specific enough? Does it feel like the first time she's heard it?
0550 - Resignation moment: is it present? Is it EARNED (not just stated)?
0551 - Villain: is there a clear external force she can blame?
0552 - Desire magnitude: is the pain/want big enough to act on?
0553 - ❌ NEVER pass a variant missing both resignation moment AND villain. At least one must be present.
0554
0555 **Layer 4: Avatar Fidelity**
0556 - Does this sound like HER words or a copywriter's words?
0557 - Cross-check against VOC word bank in avatar interior doc
0558 - Check the 3am thoughts, the parking lot moment, the "I've heard that before" exhaustion
0559 - Is the victory written as what STOPPED (not what started)?
0560 - ❌ NEVER pass copy where the avatar sounds aspirational instead of exhausted. She's resigned, not motivated.
0561 - **Lines 3-8 specificity test:** Read lines 3-8 of body copy. Broad/general = avatar was assumed, not found in VOC. Specific/concrete = avatar was found. "Many women feel frustrated when their dental routine doesn't deliver results" = assumed. "The hygienist said excellent. Again. For the third year in a row. While her teeth were getting worse." = found. Flag any copy that fails this test — rebrief required, not a line-level fix.
0562
0563 **Synthesis rules (surgical pass + any conditional escalation):**
0564 - Truth/provenance/offer/format breach → mandatory line-edit fix before the artifact can pass
0565 - Taste/conversion disagreement → logged for Ayden's judgment, never auto-applied
0566 - Cadence/specificity improvements → only as line edits that preserve provenance, claim
0567 ceiling, and the draft's native roughness
0568 - Never mutate the immutable first draft; repairs land in the working artifact
0569 - Side-by-side comparison surfaces (original / repaired / roast memo) are built ON REQUEST,
0570 not by default
0571
0572 ### 7.5 Independent Adversarial Audit Mode
0573 When reviewing a completed ad batch rather than writing it, do not treat deterministic validation as editorial approval.
0574
0575 Run two explicit gates:
0576 1. **Artifact contract:** files, fields, word ranges, offer order, destinations, and formatting.
0577 2. **Editorial/provenance:** hook quality, lines 3–8 specificity, avatar fidelity, claim/testimonial truth, awareness, persuasion chain, and cross-ad diversity.
0578
0579 A deterministic PASS can coexist with an editorial FAIL. In particular:
0580 - A brief-authorized scene is not evidence that the scene happened.
0581 - VOC that supports a behavior does not authorize inventing a first-person narrator, chronology, dialogue, outcome, or precise number.
0582 - Plausible precision is still unsupported precision.
0583 - Repair composites by attributing exact VOC, using explicit hypothetical framing, writing a non-testimonial ownership argument, or deleting the unsupported detail.
0584 - In read-only audit mode, provide exact replacement proposals for every score below 7 without editing source ads.
0585 - Separate high-confidence blockers from subjective taste flags and label confidence.
0586
0587 Use `references/adversarial-batch-copy-audit.md` for the scoring matrix, provenance test, cross-ad diversity checks, and deliverable verification. When the audit compares a batch with competitor/winner copies, a live long-form SOP, and live avatar/mechanism reports, also use `references/long-form-native-comparative-audit.md`; it requires an explicit source-precedence ledger, measured reveal timing, a winner/SOP device matrix, a per-ad disposition ledger, and separate structural versus truth/provenance findings.
0588
0589 ### 8. Cross-Variant Diversity Check
0590 - Each variant must hit a genuinely different Persona × Desire × Awareness combo
0591 - No two variants should open with the same hook formula
0592 - Headlines must not duplicate across variants
0593 - No testimonial names shared with listicle comments
0594 - **Mechanism delivery MUST be different in each variant** (full science / casual / secondhand / barely explained / analogy / skipped — see master-brief)
0595 - **CTA format MUST vary** — do NOT use "👉 Here's [reason]:" on every variant
0596 - **At least 1 variant must be SHORT** (15-20 lines) — not every variant is a 40-line story
0597 - **Social proof reviews must sound real** — typos, incomplete thoughts, 4-star mixed in, platform references
0598
0599 ## ⛔ NEVER DO (check EVERY time)
0600 - [ ] 3+ sentences on one line → KILL IT
0601 - [ ] Em-dashes anywhere → KILL IT
0602 - [ ] Emoji on CTA that isn't 👉 → KILL IT
0603 - [ ] Hook that matches anything in dead angles list → KILL IT
0604 - [ ] "Game changer", "literally", "amazing", vague future pacing → KILL IT
0605 - [ ] Mechanism-first opening (leading with how the product works) → KILL IT
0606 - [ ] Same CTA format on every variant → FIX IT
0607 - [ ] All variants are 35+ lines (no short one) → FIX IT
0608 - [ ] Testimonial names that match listicle comment names → FIX IT
0609 - [ ] Didn't read master-brief.md before writing → STOP AND READ IT
0610 - [ ] Hook is scene-setting or chronological start instead of most intriguing element → REWRITE HOOK
0611 - [ ] Best line is in headline field instead of primary text line 1 → MOVE IT
0612 - [ ] Same mechanism paragraph across multiple variants → REWRITE EACH DIFFERENTLY
0613 - [ ] Same analogy/metaphor repeated across variants → KILL DUPLICATES
0614 - [ ] AI-default words (graveyard, journey, struggle, battle, warrior) → REPLACE WITH UGLY HUMAN WORDS
0615 - [ ] Internal QA/provenance leakage ("I won't invent a review," "no fake before-and-after," legalistic claim caveats) → REWRITE AS NATIVE SKEPTICISM OR A BOUNDED TEST
0616 - [ ] CTA block is templated/identical across variants → REWRITE TO FLOW WITH STORY
0617 - [ ] Victory written as what started ("mornings are peaceful") instead of what stopped ("I didn't yell") → REWRITE
0618 - [ ] All 5 variants same persona + desire + awareness level → DIVERSIFY AT LEAST 1 DIMENSION
0619 - [ ] Mode A: dense paragraphs instead of 1 sentence per line with breathing room → BREAK APART (Mode B is PARAGRAPH prose by contract — do NOT break apart a witness native)
0620 - [ ] ⛔ ALWAYS check the full ⛔ NEVER DO section in master-brief.md — it is the single most important section
0621
0622 ## Avatar Detail Extraction (MANDATORY — do this before writing copy for ANY avatar)
0623
0624 Before writing copy, extract AT LEAST these categories from the avatar research doc into the subagent brief. If any category is missing from the research, flag it — don't skip it. If the research reveals additional categories not listed here, include those too. These are the details that separate copy that converts from copy that reads like AI.
0625
0626 1. **Failed solutions stack WITH visceral detail.** Not just "tried alarms." The specific unsettling behavior: he walks to it in his sleep, eyes open, solves math puzzles unconscious. The detail that makes a reader go "wait what?"
0627 2. **Anticipation anxiety.** What happens BEFORE the problem starts each day. She wakes before her alarm from dread. The cortisol spike. The mental math of how much buffer she has.
0628 3. **The scene after.** The drive to work in silence. The parking lot. The replaying. The 10 minutes before she can go inside. Concrete, visual, usable in copy.
0629 4. **The "I've heard that before" trap.** Everyone thinks they have the answer. She's exhausted by suggestions. This is the skepticism objection killers need to mirror.
0630 5. **Relationship cost.** What the problem did to the relationship over time. Not one fight — accumulation. He stopped talking. She became someone he avoids. The repair moment when it starts working.
0631 6. **Victory as ABSENCE.** What STOPPED happening. Not what started. She hears footsteps before she went in there. She didn't yell today. Write victory as disappearance, not arrival.
0632 7. **VOC word bank.** Her actual words organized by emotional state. Default to these over AI-generated language. Always.
0633
0634 If a subagent doesn't have all 7, the copy will be generic. Every time.
0635
0636 ## Subagent Handoff Rule
0637 When spawning a copy subagent, it MUST receive:
0638 1. The full `references/master-brief.md` file (not a summary)
0639 2. The `assets/gold-standard-example.md` file
0640 3. The specific ad copy it's writing variants for
0641 4. The NEVER DO checklist above (copy-paste it into the task)
0642 5. The 7 avatar detail categories above — extracted from avatar research, not summarized
0643 Do NOT summarize the rules. Pass the files directly.
0644
0645 ## Key Files
0646 - `references/native-structure-templates.md` — **the four locked structure templates (T1–T4) with per-section word budgets; template choice is ALWAYS asked of Fish before writing (see Mode Selector)**; Fish-outline → copywriter-fill handoff contract lives here
0647 - `references/matrix-angle-execution-map.md` — **load FIRST when the brief starts from the ad-batch-hub testing matrix** ("expand my tests", "feed cell X"): resolves every matrix angle column (incl. wrong-label / defiance / witness, added 8-12) into definition, Dawn form, mode/length, receipts, and claim gates; also the proof-column devices (comparative two-person, survey-voice, retro-proof)
0648 - `references/control-format-selection-and-pilot-gate.md` — infer long-form mode from supplied controls, select personal-anecdote narrator authority, pilot one complete ad before scaling, and repair cloned reveal/close scaffolds without rewriting strong story fronts
0649 - `references/multi-angle-batch-routing-and-repair.md` — class-level workflow for pre-draft diversity matrices, bounded same-model lanes, immutable raw artifacts, convergence QA, provenance-leak cleanup, exact-model micro-repairs, and public batch reports
0650 - `references/dawnbands-selling-root-cause-mechanism.md` — compact execution reference for the canonical Deep-Sleep Signal Lock → Somatic Wake Bypass™ → Wrist-First Handoff™ selling doctrine; load for every DawnBands format so proof review does not flatten the mechanism into generic cue-placement language
0651 - `references/dawnbands-long-form-witness-native.md` — canonical Avelia/Manus-derived DawnBands witness-story mode: narrator authority, provenance ledger, 2,500–4,000-word architecture, bounded mechanism, motif return, outcome gate, and final QA
0652 - `references/mode-b-first-draft-checklist.md` — Mode B operator card: YAML gates, offer/SKU traps, under-floor wordcount, worked example, Cloudflare Pages reading-report deploy
0653 - `references/master-brief.md` — full copywriting brief (avatar, mechanism, format rules, dead angles)
0654 - `references/adversarial-batch-copy-audit.md` — read-only batch audit protocol for scoring, testimonial provenance, unsupported precision, blocker/taste separation, and diversity verification
0655 - `references/native-proof-and-architecture-overlays.md` — testimonial truth, long-form Manus architecture boundaries, live-Meta evidence use, convergence checks, and the pre-image repair sequence
0656 - `references/avelia-short-native-templates.md` — verified competitor-derived T1/T2/T3 structures for compressed short native copy; use as a structural reference, never as winner proof
0657 - `assets/gold-standard-example.md` — cadence/format example only; do not inherit its product truth, claims, scenes, dialogue, timelines, or outcomes without independent receipts