agentleFS
postoncehqpostoncehq/x-mcp/skills/x-tweet-formatter/SKILL.md

x-tweet-formatter

Skill1 starsChanged 46 days agoMITView on GitHub

Format X (Twitter) posts for readability: line breaks, lists, Unicode bold and italic (with their accessibility and search costs), and splitting text that's over the tweet character limit before publishing with the PostOnce X MCP. Use when the user asks for a tweet formatter, to add line breaks or bold text to a tweet, or to shorten or split a tweet that's too long.

The file

We split this skill into the rules it gives an agent

7 rules. About 0 are common, 6 are distinctive, and 1 is 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.

  • 1

    Very specific

    Tied to their project's names, files or tools. Probably skip.

  • Common
  • Distinctive
  • Very specific
  1. Distinctive:

    Keep the hook on line 1 by itself when the tweet has more than two lines.

    line 18
  2. Distinctive:

    Search, including X search, usually doesn't match them to normal letters, so those words don't help the tweet get found.

    line 25
  3. Distinctive:

    If the user still wants it, style 1–3 words at most, never a whole sentence, never hashtags or names.

    line 28
  4. Distinctive:

    When the text is over the limit, offer the choices in this order:

    line 39
  5. Very specific:

    Thread: Use x-thread-generator. The MCP can't publish reply chains, so that skill explains the ways to ship it.

    line 43
  6. Distinctive:

    Long post: Only for X Premium accounts, up to 4,000.

    line 44
  7. Distinctive:

    Never split mid-sentence or mid-list, and never add "(1/2)" to text that will be posted as separate standalone tweets.

    line 46

≈ “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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

X (Twitter) tweet formatter

Take tweet text the user already has and make it read well on X without changing what it says. Then check it fits.

Line breaks and lists

  • Line breaks survive publishing. Use them to separate the hook from the body and to give each point its own line.
  • One blank line between blocks. Don't double-space every line of a short tweet.
  • Lists: one item per line with a simple marker (-, →, or 1.). Keep markers consistent.
  • Keep the hook on line 1 by itself when the tweet has more than two lines.

Unicode bold and italic

X has no native bold or italic in regular posts. "Bold" text is made of Unicode math letters (𝗯𝗼𝗹𝗱, 𝘪𝘵𝘢𝘭𝘪𝘤). Tell the user the costs before using them:

  • Screen readers often read these characters letter by letter or as symbol names, so people using them can't follow the text.
  • Search, including X search, usually doesn't match them to normal letters, so those words don't help the tweet get found.
  • Each styled letter may count as 2 characters against the limit.

If the user still wants it, style 1–3 words at most, never a whole sentence, never hashtags or names. Offer caps or a line break for emphasis instead.

Counting and the limit

The limit is 280 characters, or 4,000 if the account had X Premium when it was connected to PostOnce. Text over the limit is cut off at publish, not rejected, so the ending is lost silently. When counting:

  • Count emoji, CJK characters and Unicode-styled letters as 2.
  • Count every character of a link to be safe, even though X shortens links.

Splitting over-limit text

When the text is over the limit, offer the choices in this order:

  1. Tighten. Cut filler words, repeated ideas and throat-clearing openers. Show what was removed.
  2. Split into standalone tweets. Each one must make sense alone; schedule them separately.
  3. Thread. Use x-thread-generator. The MCP can't publish reply chains, so that skill explains the ways to ship it.
  4. Long post. Only for X Premium accounts, up to 4,000.

Never split mid-sentence or mid-list, and never add "(1/2)" to text that will be posted as separate standalone tweets.

Output

Return the formatted tweet exactly as it will appear, its character count, and a one-line note on what changed. If it was split, number the parts with their counts. Offer to publish or schedule with the postonce skill; confirm the account and time before create_post.

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.