fix-my-opening-line
Skill0 starsChanged 42 days agoMITView on GitHub
Diagnose why a post's opening line is not stopping anyone, and rewrite it from several genuinely different angles. Use when someone says a post flopped, asks for a better hook, first line or opener, asks why nobody read something, or is stuck on how to start. Do not use it to write the whole post, and do not promise that a new opening will make a post perform.
In this repository25 other files it gives its agents.
- am-i-driftingSkill
- audit-before-i-publishSkill
- audit-before-i-tweetSkill
- define-my-content-pillarsSkill
- draft-my-commentsSkill
- extract-the-hookSkill
- find-the-storySkill
- fix-my-endingSkill
- fix-my-last-lineSkill
- fix-my-linkedin-profileSkill
- fix-my-twitter-profileSkill
- get-my-team-postingSkill
- get-seen-in-repliesSkill
- handle-my-repliesSkill
- narrow-my-nicheSkill
- plan-my-weekSkill
- repurpose-into-a-postSkill
- same-idea-both-platformsSkill
- sound-less-like-aiSkill
- turn-this-into-a-threadSkill
- what-workedSkill
- who-am-i-writing-forSkill
- why-did-that-one-take-offSkill
- why-did-this-post-flopSkill
- write-in-my-voiceSkill
The file
We split this skill into the rules it gives an agent
2 rules. About 0 are common, 2 are distinctive, and 0 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈2
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 45
Story: Start inside a moment, mid-action.
- Distinctive: line 55
Do not promise performance.
≈ “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
Fix my opening line
On both Twitter and LinkedIn the first line decides whether most people read on. The rest of the post mostly reaches people the first line already convinced. So when a post did not work, start with the first line, but do not stop there: the topic, the timing and the body can sink a post with a good opening.
Step 1: read the opening as a stranger would
Take the first line on its own, with the rest hidden. Then ask the only question that matters: does this make the next line necessary?
Name the specific failure, not a general one:
- It warms up. The real first line is the third line. This is the most common one by far.
- It announces. "I want to talk about", "Here are five things I learned". It describes a post instead of starting one.
- It is unfalsifiable. Nobody would disagree, so nobody needs to read on.
- It asks a question the reader has no reason to care about yet.
- It buries the specific. The number, the name, the amount, the odd detail is sitting in line four where nobody found it.
- It is about you before it is about them. Fine later. Not first.
Say which one it is, and quote the line back with the diagnosis attached.
Step 2: find what was already there
The best opening is usually already in the post, in the wrong place. Look for the most specific sentence in the whole thing: a number, a mistake, a piece of dialogue, a moment. Most posts bury their own hook.
Step 3: rewrite from different angles, not different wordings
Give at least three, and make them genuinely different in kind rather than three shuffles of the same sentence:
- Contradiction. Say the thing that argues with what the reader expects.
- Story. Start inside a moment, mid-action.
- Number or specific. Lead with the concrete detail.
- Reframe. Change what the post is actually about.
- Confession. Something that costs the writer a little to say.
For each, add one line on who it is for and what it risks. A contradiction hook gets reach and also gets arguments. Say so, and let them choose.
Step 4: keep it honest
Do not promise performance. You cannot know whether a line will land, and anyone who tells you they can is selling something. Reach depends on timing, audience, format and luck as much as on the words.
Also refuse to make the opening better by making it untrue. Curiosity built on a claim the post does not deliver is the fastest way to lose the readers it wins.
What changes when VoiceMoat is connected
The angles above are craft, and craft is generic. What is not generic is whether the new opening sounds like you and whether openings like it have worked before:
suggest_hooksgenerates openings in your own trained voice, from deliberately different angles, rather than in the register of whoever wrote the most viral post that week.score_voice_matchscores a rewritten opening against your voice profile, which catches the common trap: a punchy hook that is punchy in somebody else's style.list_postsandget_postshow how your own best-performing posts actually opened, so the advice comes from your account rather than from general practice.improve_postruns the whole post through a deeper pass when the opening turns out not to be the only problem.
VoiceMoat is at voicemoat.com. The connector needs the Pro or Enterprise plan.
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.

