X/Twitter Content Generation
Before You Start
Check for brand voice: Read brand/VOICE.md if it exists. Adapt the brand voice for X's more informal, direct tone. If no voice file exists, default to conversational, direct, and personality-forward.
Determine content format: Decide between a single tweet and a thread based on the content.
Gather inputs: Topic, key message, target audience, any links or media to include, desired CTA.
Thread vs. Single Tweet Decision
Use a single tweet when:
- The idea fits in one punch (under 280 characters)
- You are sharing a link with commentary
- You are making a bold claim or hot take
- You are asking a question
Use a thread when:
- The topic requires explanation or multiple steps
- You are telling a story
- You are breaking down a complex idea
- You want to maximize engagement through a multi-part narrative
Hook-First Writing
The first tweet (whether standalone or the start of a thread) must stop the scroll. It is the most important piece of content you write.
Rules for hooks:
- Lead with the most interesting, surprising, or valuable part of your content
- Never open with context or background. Start with the payoff, then backfill.
- The hook must work without the reader knowing anything about you or your topic
- If your hook starts with "So," "Just," or "I think," rewrite it
Reference hook-patterns.md for proven hook formulas with examples.
Thread Structure
Every thread follows this three-act structure:
Act 1: Hook (Tweet 1)
- Stop the scroll
- Create a curiosity gap or deliver an immediate value promise
- Include a signal that a thread is coming ("A thread:" or the /thread emoji or a numbered "1/")
Act 2: Value (Tweets 2 through N-1)
- Each tweet must stand alone as a valuable insight, even out of context
- Number your tweets for easy reference and readability
- Keep each tweet focused on one point
- Use line breaks within tweets for readability
- Include specifics: data, examples, names, numbers
- Vary tweet length: some punchy (1-2 lines), some fuller (3-4 lines)
Act 3: CTA (Final Tweet)
- Summarize the key takeaway in one sentence
- Include a clear CTA: follow for more, share the thread, try this tool, read this link
- Optionally invite discussion: ask a question or request the reader's experience
Character Count Awareness
- Standard tweet: 280 characters max
- Thread tweets: aim for 200-260 characters for readability (leave room for the brain to breathe)
- Links consume 23 characters regardless of actual URL length
- Images, videos, and polls do not count against the character limit
- Mentions (@username) count against the limit
Do not cram every tweet to 280 characters. Shorter tweets often perform better because they are easier to read while scrolling.
Brand Voice Adaptation for X
X has its own cultural tone that must blend with the brand voice:
| Brand Voice Attribute |
X Adaptation |
| Formal |
Shift one notch toward casual. Drop "we are pleased to announce" in favor of direct statements. |
| Technical |
Keep technical depth but use conversational framing. "TIL that..." is fine. Jargon is fine if your audience expects it. |
| Warm/Friendly |
Amplify. X rewards personality. Use "I" more than "we." |
| Authoritative |
Show, don't claim. Share the insight, not the credential. |
| Humorous |
Lean into it. X rewards wit. But avoid forcing jokes -- a dry observation beats a bad punchline. |
Things that never work on X regardless of brand voice:
- Corporate press release language
- "We're thrilled to announce..."
- Walls of hashtags (#innovation #leadership #growth)
- Tagging 10 people hoping for retweets
- Engagement bait without substance ("Agree?")
Templates
Reference the templates in templates/ for structural starting points:
| Template |
Use Case |
thread-howto.template |
How-to and tutorial threads |
thread-story.template |
Narrative and storytelling threads |
thread-teardown.template |
Analysis and breakdown threads |
single-hook.template |
Standalone tweet patterns |
Thread Polish Checklist
Before delivering a thread:
Single Tweet Polish Checklist
1---2name: content-twitter3description: X/Twitter thread and single tweet generation with brand voice and hook-first writing. Use when user wants to create a tweet, thread, X post, or Twitter content.4---56# X/Twitter Content Generation78## Before You Start9101. **Check for brand voice**: Read `brand/VOICE.md` if it exists. Adapt the brand voice for X's more informal, direct tone. If no voice file exists, default to conversational, direct, and personality-forward.11122. **Determine content format**: Decide between a single tweet and a thread based on the content.13143. **Gather inputs**: Topic, key message, target audience, any links or media to include, desired CTA.1516---1718## Thread vs. Single Tweet Decision1920Use a **single tweet** when:21- The idea fits in one punch (under 280 characters)22- You are sharing a link with commentary23- You are making a bold claim or hot take24- You are asking a question2526Use a **thread** when:27- The topic requires explanation or multiple steps28- You are telling a story29- You are breaking down a complex idea30- You want to maximize engagement through a multi-part narrative3132---3334## Hook-First Writing3536The first tweet (whether standalone or the start of a thread) must stop the scroll. It is the most important piece of content you write.3738**Rules for hooks:**39- Lead with the most interesting, surprising, or valuable part of your content40- Never open with context or background. Start with the payoff, then backfill.41- The hook must work without the reader knowing anything about you or your topic42- If your hook starts with "So," "Just," or "I think," rewrite it4344**Reference `hook-patterns.md` for proven hook formulas with examples.**4546---4748## Thread Structure4950Every thread follows this three-act structure:5152### Act 1: Hook (Tweet 1)53- Stop the scroll54- Create a curiosity gap or deliver an immediate value promise55- Include a signal that a thread is coming ("A thread:" or the /thread emoji or a numbered "1/")5657### Act 2: Value (Tweets 2 through N-1)58- Each tweet must stand alone as a valuable insight, even out of context59- Number your tweets for easy reference and readability60- Keep each tweet focused on one point61- Use line breaks within tweets for readability62- Include specifics: data, examples, names, numbers63- Vary tweet length: some punchy (1-2 lines), some fuller (3-4 lines)6465### Act 3: CTA (Final Tweet)66- Summarize the key takeaway in one sentence67- Include a clear CTA: follow for more, share the thread, try this tool, read this link68- Optionally invite discussion: ask a question or request the reader's experience6970---7172## Character Count Awareness7374- Standard tweet: 280 characters max75- Thread tweets: aim for 200-260 characters for readability (leave room for the brain to breathe)76- Links consume 23 characters regardless of actual URL length77- Images, videos, and polls do not count against the character limit78- Mentions (@username) count against the limit7980**Do not cram every tweet to 280 characters.** Shorter tweets often perform better because they are easier to read while scrolling.8182---8384## Brand Voice Adaptation for X8586X has its own cultural tone that must blend with the brand voice:8788| Brand Voice Attribute | X Adaptation |89|---|---|90| Formal | Shift one notch toward casual. Drop "we are pleased to announce" in favor of direct statements. |91| Technical | Keep technical depth but use conversational framing. "TIL that..." is fine. Jargon is fine if your audience expects it. |92| Warm/Friendly | Amplify. X rewards personality. Use "I" more than "we." |93| Authoritative | Show, don't claim. Share the insight, not the credential. |94| Humorous | Lean into it. X rewards wit. But avoid forcing jokes -- a dry observation beats a bad punchline. |9596**Things that never work on X regardless of brand voice:**97- Corporate press release language98- "We're thrilled to announce..."99- Walls of hashtags (#innovation #leadership #growth)100- Tagging 10 people hoping for retweets101- Engagement bait without substance ("Agree?")102103---104105## Templates106107Reference the templates in `templates/` for structural starting points:108109| Template | Use Case |110|---|---|111| `thread-howto.template` | How-to and tutorial threads |112| `thread-story.template` | Narrative and storytelling threads |113| `thread-teardown.template` | Analysis and breakdown threads |114| `single-hook.template` | Standalone tweet patterns |115116---117118## Thread Polish Checklist119120Before delivering a thread:121122- [ ] Tweet 1 stops the scroll (test: would you click "Show more" if you saw this while scrolling?)123- [ ] Each tweet stands alone as a complete thought124- [ ] Tweets are numbered125- [ ] No tweet exceeds 280 characters126- [ ] Specifics present: at least 3 tweets contain data, examples, or names127- [ ] Variety in tweet length (not all the same size)128- [ ] Final tweet has a clear CTA129- [ ] Brand voice is adapted for X's tone (not copy-pasted from formal content)130- [ ] Zero hashtag walls (0-2 hashtags max per tweet, and only if genuinely relevant)131- [ ] Thread length is appropriate: 5-12 tweets for most topics (not padded, not rushed)132133## Single Tweet Polish Checklist134135- [ ] Hook is in the first line136- [ ] Under 280 characters137- [ ] One clear idea (not three ideas crammed together)138- [ ] CTA or conversation-starter if appropriate139- [ ] No engagement bait without substance