The pipeline, step by step
One owner per job. Keep, Change or Drop each step.
1. Know the buyer and their words
Owner: icp-engine
Who the buyer is, their situation and the exact words they use for the pain, desire, worry and the moment that makes them act.
What we add
- Sort mined reviews and chats into real buyers vs noise before quoting anything (voice-of-customer method).
- Tag each customer phrase as pain, desire, worry or trigger moment, with its source and date (Copyhackers message mining).
- For B2B (AIREI): name the buyer's exact moments, e.g. a month-end oil-loss surprise or an EUDR buyer audit (LinkedIn B2B Institute research). Short buyer interviews, from AIREI.
- Record how aware the buyer is AND how many similar ads they have already seen, as two separate fields.
- No customer words yet for a brand? Fall back to research, then ads research, then the decoded winning hook (step 2), and say so on the brief.
Fixes in our own skills
icp-engine becomes the one owner (it saves to the shared memory all machines read). icp-discover's "test a draft" mode moves into it.- Our review collector already reads reviews and WhatsApp chats but only feeds the testimonial wall. It will also feed the customer-words bank.
2. Study proven ads, and judge whether the HOOK won
Owner: ad-reference-research (+ winning-ad-dna for our own winners)
Decode a winning ad's look and beats, and also judge whether its hook or headline is the part that won.
What we add
- Version check: when an advertiser runs the same picture with different headlines, the version that keeps running is the winning hook (the closest public stand-in for a hook-only test).
- Angle vs run length: which hook angles keep running longest in a category (meta-ads-scraper method).
- Rule check: Jev judges the hook against our rules (real moment, buyer's words, want-it-now, short), with planted good and bad examples.
- Every reference gets a hook verdict: proven, likely or unproven, with the reason. Together they form a hook library per category.
3. Plan the batch and write the brief
Owner: write-brief
Pick one angle per ad and plan the whole batch before any words are written.
What we add
- Name the buyer's situation first, then the angle.
- Say what the buyer does today instead (e.g. manual checks, or nothing). That is the real competitor (April Dunford positioning).
- One line per angle: what would prove it wrong.
- A coverage grid (buyer type x reason to buy x format) so a batch is not one angle reworded many times.
- A shared brand file with a hook ledger: hooks that are working, on watch, or retired.
Fixes in our own skills
- Fix the brief skill's broken file references.
- Link the WhatsApp chat flow (ACCA) so the ad's promise matches the first chat message.
4. Write the hooks and headlines
Owner: sales-copywriting (one hook bank)
Write the words. PAS, AIDA, BAB, 4Cs, Hook-Story-Offer and ACCA decide the ORDER of the message, not its words.
What we add
- Every hook names its source: a customer phrase, or a proven winning hook from step 2.
- A hook has three parts and no repeats; a "now you can" test; five hook types with a specificity check (dtc-copywriting method).
- B2B lines that lower the buyer's risk, e.g. pilot first, no commitment.
- Chinese: pain-headline formulas from Xiaohongshu, and a 3-layer pain (the scene, the cost, the failure).
- Malay written natively with
bm-copy from how customers talk; translations through campaign-translate.
Fixes in our own skills
- Merge the two other hook banks (
humor-hook-bank and the hook engine inside marketing-mastery) into one. - Retire the empty
copywriter stub. Refresh the old copies of these skills on this Mac.
5. One hook check before any spend
Owner: the existing hook quality gate + one shared Jev hook check
Every hook passes the same check, automatically, before production.
What we add
- Fails if it has no source (customer phrase or proven hook).
- Specific and sensory, not abstract; no AI-sounding words; no repeated angle in the batch; on-image words short.
- Want-it-now check; brand rule lists; read the brand's own winning lines first.
- Jev checks always include planted good and bad examples, so we know the check itself works.
Fixes in our own skills
- Today the brief and production steps never call this gate. They will.
- Replace the three hand-written Jev hook scripts (one per brand batch) with the one shared check.
6. Publish and test the hook
Owner: marketing (publish)
Prove which hook wins with real money, not opinion.
What we add
- Hook-only tests: same picture, body and offer; only the hook changes; Meta's own split-test tool.
- Each hook variant gets its own tracking ID; its hook tags are saved with the published ad.
7. Measure and learn which hooks win
Owner: derive-winners + the winner feature tools
Learn which hook patterns win for which buyer, and feed it back.
What we add
- Judge each ad on its own job: awareness ads on how many stop and watch; sales ads on chats, cost per lead and true sales.
- When results are weak, name the part that broke: hook, the next seconds, the offer, the landing or the WhatsApp chat.
- A winning hook gets its next wave of variants every 1-2 weeks.
- Results go back into the hook ledger (step 3) and the hook library (step 2).
Fixes in our own skills
- The winner tools look at pictures and formats only today. They get a hook and copy field.
WhatsApp chat (ACCA)
Owner: acca-engine
The chat after the click.
What we add
- The step-5 check confirms the ad's promise matches the first WhatsApp message.