X Hook Extractor
Paste a viral tweet or thread URL. Get back: which hook formula it uses, the
exact structure, why it worked, and a blank template you can fill with your own
voice.
When to use
- User finds a viral tweet or thread they want to study
- User wants to replicate a specific creator's pattern
- Before
x-post-writer or x-thread-builder, to seed a draft with a proven shape
Input
An X tweet or thread URL (x.com or twitter.com, /status/<id>). For a thread,
the URL of the first tweet is best.
Output
- Formula identified (X1-X10 from
../../references/hook-formulas.md) with a
confidence score
- Container: single tweet vs thread, and why that container fit the idea
- Structural breakdown:
- The hook line (and for a thread, how tweet 1 opens the loop)
- Body architecture (per-tweet roles for a thread)
- The close (what earns the repost or bookmark)
- Reaction-triggering devices (numbers, named entities, the open loop)
- Primary goal the original chased (replies / reposts / likes / bookmarks)
- Why it worked psychologically and algorithmically
- Blank template with
{slot} markers matched to the original, ready for the
user's topic
- Cautions: anything in the original that would fail a 2026 audit (more
than one em dash in a tweet, an AI-vocab cluster, 3+ hashtags, link in tweet 1)
Steps
- Parse the URL.
lib.url_parser.parse_x_url(url) returns handle,
tweet_id, url_type.
- Get the text. This bundle has no built-in tweet reader, so ask the user to
paste the tweet or the full thread text. (If they later wire an Apify tweet
actor, read it automatically.)
- Detect the container. One self-contained tweet, or a multi-tweet thread.
- Classify against the 11 formulas using features:
- Single tweet: a flat contrarian claim (X1)? one hard number (X2)? a personal
metric/confession (X3)? a quote tweet adding a layer (X4)? a one-line-per-
item list (X5)? a relatable shared moment (X6)?
- Thread: a numbered teaching promise (X7)? a story starting at the tension
(X8)? a surprising result with the mechanism withheld (X9)? a first-person
"how I" teardown (X10)?
- Score confidence. If two formulas fit, return the top 2 with fit scores.
- Extract structure. Label each part by its role. For a thread, map tweet 1
(the loop), the front-loaded payoff, the body beats, and the closer.
- Name the primary goal the original optimized for.
- Generate a blank template with
{slot} markers matched to the original
shape and the user's topic.
- Audit the source. Flag any AI tells in the original so the user does not
copy them.
Example
See references/examples.md for worked teardowns.
Formulas reference
See ../../references/hook-formulas.md for the 11 canonical X formulas with full
skeletons and goal tags.
Files
SKILL.md - this file
references/classification-rules.md - feature extraction + scoring heuristics
references/examples.md - worked teardowns (single tweet and thread)
Related skills
x-post-writer - use the extracted single-tweet template to draft your own
x-thread-builder - use the extracted thread template
x-humanizer --mode audit - audit your draft before shipping
1---2name: x-hook-extractor3description: Reverse-engineer the hook from a viral X (Twitter) tweet or thread URL. Identifies which of the 10 canonical 2026 X formulas it uses (one-liner contrarian, data-point, build-in-public, quote-tweet, mini-list, relatable cold-open, listicle-thread, story thread, curiosity-gap, how-I teardown), explains why it worked, and returns a blank template mapped to your topic with its primary goal. Use to learn from a tweet you admire. Not for writing your own (use x-post-writer or x-thread-builder).4---56# X Hook Extractor78Paste a viral tweet or thread URL. Get back: which hook formula it uses, the9exact structure, why it worked, and a blank template you can fill with your own10voice.1112## When to use1314- User finds a viral tweet or thread they want to study15- User wants to replicate a specific creator's pattern16- Before `x-post-writer` or `x-thread-builder`, to seed a draft with a proven shape1718## Input1920An X tweet or thread URL (x.com or twitter.com, `/status/<id>`). For a thread,21the URL of the first tweet is best.2223## Output2425- **Formula identified** (X1-X10 from `../../references/hook-formulas.md`) with a26 confidence score27- **Container:** single tweet vs thread, and why that container fit the idea28- **Structural breakdown:**29 - The hook line (and for a thread, how tweet 1 opens the loop)30 - Body architecture (per-tweet roles for a thread)31 - The close (what earns the repost or bookmark)32 - Reaction-triggering devices (numbers, named entities, the open loop)33- **Primary goal** the original chased (replies / reposts / likes / bookmarks)34- **Why it worked** psychologically and algorithmically35- **Blank template** with `{slot}` markers matched to the original, ready for the36 user's topic37- **Cautions:** anything in the original that would fail a 2026 audit (more38 than one em dash in a tweet, an AI-vocab cluster, 3+ hashtags, link in tweet 1)3940## Steps41421. **Parse the URL.** `lib.url_parser.parse_x_url(url)` returns `handle`,43 `tweet_id`, `url_type`.442. **Get the text.** This bundle has no built-in tweet reader, so ask the user to45 paste the tweet or the full thread text. (If they later wire an Apify tweet46 actor, read it automatically.)473. **Detect the container.** One self-contained tweet, or a multi-tweet thread.484. **Classify against the 11 formulas** using features:49 - Single tweet: a flat contrarian claim (X1)? one hard number (X2)? a personal50 metric/confession (X3)? a quote tweet adding a layer (X4)? a one-line-per-51 item list (X5)? a relatable shared moment (X6)?52 - Thread: a numbered teaching promise (X7)? a story starting at the tension53 (X8)? a surprising result with the mechanism withheld (X9)? a first-person54 "how I" teardown (X10)?555. **Score confidence.** If two formulas fit, return the top 2 with fit scores.566. **Extract structure.** Label each part by its role. For a thread, map tweet 157 (the loop), the front-loaded payoff, the body beats, and the closer.587. **Name the primary goal** the original optimized for.598. **Generate a blank template** with `{slot}` markers matched to the original60 shape and the user's topic.619. **Audit the source.** Flag any AI tells in the original so the user does not62 copy them.6364## Example6566See `references/examples.md` for worked teardowns.6768## Formulas reference6970See `../../references/hook-formulas.md` for the 11 canonical X formulas with full71skeletons and goal tags.7273## Files7475- `SKILL.md` - this file76- `references/classification-rules.md` - feature extraction + scoring heuristics77- `references/examples.md` - worked teardowns (single tweet and thread)7879## Related skills8081- `x-post-writer` - use the extracted single-tweet template to draft your own82- `x-thread-builder` - use the extracted thread template83- `x-humanizer --mode audit` - audit your draft before shipping