# Hooks

> Use when writing headlines, titles, blurbs, subject lines, event/webinar descriptions, landing page headers, thread openers, or post first lines. Written copy only.

- Skill: `exiao/hooks` (Agent Skill, multi-file: 22 files)
- Install (CLI): `npx skillmds@latest add exiao/hooks`
- Raw SKILL.md: https://api.skillmd.com/api/skills/exiao/hooks/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: exiao (https://skillmd.com/u/exiao)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/exiao/hooks

---

# Headlines & Hooks Engine (Written Copy)

Generate scroll-stopping titles, subtitles, subject lines, blurbs, and opening lines for articles, posts, emails, landing pages, and event descriptions.

**Scope:** written surfaces. For TikTok/Reels/Shorts/UGC **video** hooks (cold opens, visual hooks, retention architecture, paid UGC ad formats, creator hook banks), use the **`hooks-shortform`** skill instead.

## The Concert Theory (Mental Model)

Source: @aidan.melograna ([reel](https://www.instagram.com/reel/DUVgnmZDOSa/), credit @briarcochran for the idea).

> Imagine you walk into a stadium with 25,000 people watching you. You have **5 seconds** to say one thing to the crowd. If what you say doesn't create an emotional reaction, they all turn around and leave.

That's a hook. Not a sentence, a survival event.

**Three jobs of every hook (in this order):**
1. **Stop the scroll**, pattern interrupt, tension, or open loop
2. **Make it obvious who it's for**, the right reader should feel called out immediately
3. **Create just enough curiosity to keep them reading**, withhold the payoff

**The one question to ask before publishing anything:**

> *"If I said this on a stage, would anybody lean in to listen more, or would they just pull out their phone and scroll?"*

If the answer is "scroll," the hook is dead. Rewrite it.

**Two rules that fall out of this:**
- **Don't open with context. Open with tension.** Context is what you owe the reader *after* they're listening, not before.
- **First sentence must make them feel seen or challenged.** If it doesn't, you're already cooked. "Seen" = you named their secret. "Challenged" = you contradicted what they believe.

Attention is leverage. If nobody stays, nothing else in the post matters, not the insight, not the CTA, not the proof. Content isn't about talking more. It's about saying the right thing first.

---

## LinkedIn Hook Formula

LinkedIn shows exactly 2 lines before the "…more" button. That cutoff is the only conversion that matters. If readers don't click "…more", nothing else counts.

**Constraints:**
- 2 lines max, each ≤55 characters
- Never about the author, always about the reader or a universal tension
- Creates an open loop: unanswered question, contradiction, or bold claim
- No emoji openers, no hashtags, no personal achievements

**5 pattern-interrupt techniques:**

| Technique | Formula | Example |
|-----------|---------|---------|
| Contradiction | Say something that sounds wrong | "The worst posts get the most followers." |
| Specific number + twist | Number + unexpected result | "I deleted 500 connections. Reach went up 40%." |
| Direct accusation | Call the reader out | "You're writing for your mom, not your market." |
| Stolen thought | Say what they secretly think | "You already know your posts are boring." |
| Absurd reframe | Make the mundane dramatic | "Your hook has 1.2 seconds. Most waste all of them." |

**Process:** Generate 10 variants (2 per technique). Don't pick the "safest" one, pick the one that made you wince slightly.

## Working Examples (Before → After)

These show the transformation. The before is what a first draft usually looks like. The after is what actually gets clicked.

**Topic: AI stock research**
- ❌ Before: "How AI Can Help You Research Stocks Better"
- ✅ After: "The Stock Market Has a Cheat Code. Most People Just Don't Know It Exists."
- *Why:* Before describes the tool. After sells the outcome + implies insider knowledge.*

**Topic: Bloom app feature**
- ❌ Before: "Bloom Now Has an AI Portfolio Analyzer"
- ✅ After: "I Let an AI Critique My Portfolio for 30 Days. It Found Things My Broker Never Mentioned."
- *Why:* Personal experiment framing = relatable. Specific timeframe. Implies betrayal by trusted source.*

**Topic: Investing with AI**
- ❌ Before: "Why Retail Investors Should Use AI Tools"
- ✅ After: "Hedge Funds Have Had This Advantage for 10 Years. You Can Have It Now for Free."
- *Why:* Us vs. them + democratization. "10 years" makes the gap feel real. "For free" handles objection before it forms.*

**Topic: Building Bloom (founder angle)**
- ❌ Before: "Lessons From Building a Fintech App as a Solo Founder"
- ✅ After: "6 Months Building a Fintech App Alone Taught Me One Thing Most PMs Never Learn"
- *Why:* Specific time + specific person (solo) + promises one concrete lesson. Curiosity gap.*

**LinkedIn hooks for the same Bloom topic:**
```
Line 1 (≤55 chars): "I replaced my analyst with an AI."
Line 2 (≤55 chars): "It found what 3 years of manual research missed."
```
*Pattern: Contradiction → Proof. Reader hits "…more" to find out what it found.*

---

## B2B, Event & Webinar Examples (Before → After)

Consumer-app hooks over-rotate on drama. B2B, event, and education surfaces need the same tension mechanics with a **credible, specific, professional register**. Keep the open loop; drop the shock.

**Surface: webinar registration blurb**
- ❌ Before: "Join us for a webinar on improving your data pipeline reliability."
- ✅ After: "Most data teams find out a pipeline broke from a customer email. We'll show you the 3 checks that catch it first."
- *Why:* Names a specific humiliation the audience recognizes, then promises a bounded, countable payoff. No hype words.*

**Surface: conference talk title**
- ❌ Before: "Scaling Microservices at Enterprise Scale"
- ✅ After: "We Split the Monolith. Two Years Later We Merged Half of It Back."
- *Why:* Contradiction of the accepted best practice + implied hard-won lesson. Practitioners attend to find out which half.*

**Surface: B2B landing page header**
- ❌ Before: "Powerful Analytics for Modern Finance Teams"
- ✅ After: "Your Month-End Close Takes 9 Days. The Data Was Ready on Day 2."
- *Why:* Specific-number-plus-twist. Names the gap between when data exists and when it's usable, which is the actual purchase trigger.*

**Surface: course / training description**
- ❌ Before: "This course teaches the fundamentals of financial modeling."
- ✅ After: "Build the Model an Investment Committee Can't Poke Holes In. Starting From a Blank Sheet."
- *Why:* Sells the outcome and the audience's real fear (being questioned in the room), not the curriculum.*

**Surface: event / meetup description**
- ❌ Before: "A networking evening for product managers in fintech."
- ✅ After: "Fifty Fintech PMs, No Slides. Bring the Roadmap Decision You're Stuck On."
- *Why:* Absurd-reframe of a tired format + a concrete entry requirement that qualifies the room and signals the value.*

**Surface: email subject line (enterprise outbound)**
- ❌ Before: "Following up on our platform capabilities"
- ✅ After: "The compliance question your auditor will ask in Q3"
- *Why:* Stolen thought / direct relevance. Reads like an internal note, not a pitch. Time-bound so it feels urgent without a fake deadline.*

**B2B register rules:**
- Specificity substitutes for drama. A real number, a real role, a real deadline beats an exclamation.
- Name the internal stakeholder consequence (the auditor, the board, the committee, the customer email), not the abstract benefit.
- Never make a claim the buyer's procurement team can falsify. In B2B the hook and the contract are read by the same person.
- Skip second-person accusation when the reader is senior; use the third-person industry observation instead ("Most data teams…" not "You're doing this wrong").

---

## The Dream Test (Bloom guardrail)

Before shipping any Bloom hook, run this check: **does the first line sell a feeling/identity/outcome, or does it describe what the app does?** If it describes the app, rewrite. Consumers buy the dream; the capability is the proof beat, not the hook (Stratechery, "The iPhone's Last Stand," Jun 2026, full doctrine in `content-strategy` → "Sell the Dream, Not the Capability").

| Fails the dream test | Rewritten |
|----------------------|-----------|
| "Bloom's AI gives you a second opinion on any stock" | "I stopped asking Reddit if my stocks were okay" |
| "AI-powered portfolio analysis in seconds" | "The night I panic-sold everything was the last time I invested blind" |
| "Track 500 stocks with real-time alerts" | "I slept through the open. My phone knew it didn't matter." |
| "Research like a hedge fund" | "Be the friend people ask about stocks, not the one who asks" |

Exception: high-intent/search surfaces and warm audiences, capability hooks convert there. The dream test is mandatory for cold social, recommended elsewhere. For B2B and high-intent surfaces the capability *is* often the hook, so apply the B2B register rules above instead.

---

## References

- [Brand Voice Reference](references/brand-voice-reference.md)
- [The Process](references/the-process.md)
- [Layered Hooks](references/layered-hooks.md)
- [Hook Rules](references/hook-rules.md)
- [Title Formulas (Ranked by Effectiveness)](references/title-formulas-ranked-by-effectiveness.md)
- [Subtitle Rules](references/subtitle-rules.md)
- [Anti-Patterns (Never Do These)](references/anti-patterns-never-do-these.md)
- [X/Twitter Title Adaptations](references/x-twitter-title-adaptations.md)
- [LinkedIn Title Adaptations](references/linkedin-title-adaptations.md)
- [Quality Check](references/quality-check.md)
- [The 9 Universal Hook Types (Mary Buckham)](references/the-9-universal-hook-types-mary-buckham.md)
- [Better Openers (Post-Draft)](references/better-openers-post-draft.md)
- [Hook Types Expanded (6 types with formulas)](references/hook-types-expanded.md)
- [Hook Patterns (18 patterns + selection matrix)](references/hook-patterns.md)
- [Headline Formulas Library (15 formulas)](references/headline-formulas-library.md)
- [Thread Hook Templates (20+ templates)](references/thread-hook-templates.md)
- [Sticky Sentence Techniques](references/sticky-sentence-techniques.md)
- [Power Words Library](references/power-words-library.md)
- [Trigger Words](references/trigger_words.md)
- [Usage](references/usage.md)
- [References index](references/references.md)

## Output Format

<!-- HARD CONSTRAINTS, these apply at the moment you write, not just in review.
     1. NAME THE ARTIFACT. Every piece of copy names the one concrete thing the reader
        walks away with: an eval, a template, a rubric, a checklist, a recording, a
        number they'll know. "Insights", "learnings", "best practices", and category
        nouns ("continuous evals", "analytics", "a platform") are NOT artifacts.
        If the surface is too short for a full clause, the artifact still gets the
        last three words. On a 2-line LinkedIn opener the artifact may be deferred
        to the body, but say so explicitly rather than silently dropping it.
     2. Open with tension, never context. No "This is", "We are hosting", "Join us".
     3. No em dashes. No delve/leverage/harness/utilize/cutting-edge/game-changer.
     4. Every claim carries a number, a name, or an object. Cut "stellar", "powerful",
        "real-world", "best-in-class" unless something concrete sits behind them.
     5. NEVER INVENT A SPECIFIC. Every number, date, duration, proper noun, and finding
        must come from source material the user gave you or from the live page. You may
        not supply a plausible one to satisfy rule 4. If you don't have a real specific,
        write around it or ask for it. A vague line that ships is recoverable; a
        fabricated number that ships is not.
        - Where the source NAMES things, use the names. "Four frontier models" is the
          weaker version of "Opus, Fable 5, GPT-5.6 Sol, Kimi K3" when the page lists
          all four. Names are the search terms and the credibility.
        - Mark any placeholder you cannot source as [NEEDS SOURCE] rather than filling it.
        - Rules 4 and 5 conflict by design. Rule 5 wins every time.
-->

**Before writing:** if the copy is for a real page, event, or product, read the source
first. Rewriting from a pasted excerpt loses the names, numbers, and context that make
the copy specific, and invites you to invent replacements for them.

Default to 10 headlines. If the user asked for one hook, a rewrite of an existing line, or a single platform variant, give exactly that. Present as a numbered list:

1. ⭐ **Best headline here**, _Rationale: why this one wins (hook strength, clarity, curiosity gap)_
2. **Another headline**, _Rationale: one line on why it works_
3. **Another headline**, _Rationale: ..._
...

Rules:
- Star ⭐ the single recommended pick
- Each headline gets a 1-line rationale explaining the mechanism (curiosity gap, pattern interrupt, specificity, etc.)
- Mix formats: questions, statements, "How to", lists, contrarian takes
- Before delivering, re-read the constraint block above and confirm the artifact is named
- After presenting, ask if the user wants variations on any specific headline or adaptation for a different platform

