social-hook-generator
Skill1 starsChanged 40 days agoMITView on GitHub
Generates 10 labeled opening lines for a written social post, one per hook archetype, so the writer can test instead of guess. Use when drafting or rewriting the first line of a LinkedIn post, X post or thread, Instagram caption, or newsletter intro. Do NOT use when the hook is the spoken or on-screen opener of a short-form video (TikTok, Reels, Shorts) - use video-hook-writer instead.
In this repository8 other files it gives its agents.
The file
We split this skill into the rules it gives an agent
6 rules. About 0 are common, 6 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈6
Distinctive · estimate
This author's own choices. Worth a look.
0
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 33
Every hook is concrete: a real number, outcome, timeframe, or named subject beats any adjective.
- Distinctive: line 39
Do not write hooks that depend on a spoken line, on-screen text, or a visual frame - that is video, not a written post.
- Distinctive: line 40
Do not use hollow shock ("you won't BELIEVE"), or clickbait the content doesn't deliver.
- Distinctive: line 41
Do not open with "Unpopular opinion" unless the take is genuinely unpopular, and never use filler like "Let that sink in."
- Distinctive: line 42
Do not start more than two of the ten hooks with "I".
- Distinctive: line 43
Do not ship vague placeholders silently - mark every inferred specific so the writer replaces it.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Social Hook Generator
Produce 10 distinct opening lines for a written post, labeled by archetype, so the writer A/B-tests rather than guesses. The hook does one job: buy the second line - the first ~70 visible characters decide whether the rest gets read.
Workflow
- Extract the payoff. Identify the post's real tension and the promise the body delivers. If there is no genuine tension or payoff, stop and say the problem is upstream - help reframe the idea before writing hooks.
- Mine for specifics. Pull every concrete asset from the idea: numbers, dollar figures, timeframes, named outcomes, roles. Where the idea lacks them, infer plausible placeholders and mark them clearly (e.g. [your number]) for the writer to make true.
- Generate one hook per archetype, 10 total, each labeled:
- Contrarian - "Stop doing X."
- Stakes - "This mistake cost me $40k."
- Curiosity Gap - "Nobody tells you what happens after Y."
- Specific Number - "I tested 7 ways to Z."
- Pain Question - names the reader's exact frustration.
- Mini-Story - "3 years ago I almost quit."
- Bold Claim - a defensible, falsifiable assertion.
- How-To Promise - the concrete result the post teaches.
- Callout - "If you're a [role], read this."
- Pattern Interrupt - an unexpected first word or framing.
- Fit the written surface. Make each hook self-contained as text: it must land before the cut-off - X's tweet limit, LinkedIn's "...more" fold, Instagram's first caption line. No reliance on audio, video, or a thumbnail.
- Hand back all 10 with their labels and a one-line note on which archetypes suit the writer's idea best.
Deliverable
Produce a labeled list of exactly 10 hooks - one per archetype, in the order above - with every inferred specific marked as a [placeholder] the writer must replace, followed by a one-line recommendation naming the 2-3 archetypes best matched to this particular idea and why. The writer should be able to paste any hook directly into the platform's composer.
Quality bar
- Every hook is concrete: a real number, outcome, timeframe, or named subject beats any adjective. "I grew fast" fails; "0 to 10k in 90 days" passes.
- The 10 are genuinely different patterns, not ten rewordings of one line.
- Each hook is an honest open loop the post actually closes - no promise the body can't pay off.
- Sentence length and first words vary across the set.
Do NOT
- Do not write hooks that depend on a spoken line, on-screen text, or a visual frame - that is video, not a written post.
- Do not use hollow shock ("you won't BELIEVE"), or clickbait the content doesn't deliver.
- Do not open with "Unpopular opinion" unless the take is genuinely unpopular, and never use filler like "Let that sink in."
- Do not start more than two of the ten hooks with "I".
- Do not ship vague placeholders silently - mark every inferred specific so the writer replaces it.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

