nice to have
Back to the shelf Sign in Submit a kit
← All kits

X Auto-Post Kit

Post saved drafts to X automatically, one per day at a set time

How to use
Example output from X Auto-Post Kit

X Auto-Post Kit is a vibe coding kit for Claude Code and Codex. Post saved drafts to X automatically, one per day at a set time. It includes 10 fixes for pitfalls the maker hit in real work. Free.

When this helps

You want to post to X daily, but scheduling tools fail silently for days without you noticing

What it does

Drop draft posts (.md files) into drafts/ and it posts one to your X account at the times you choose. If your computer was asleep, it posts only the one that was missed, never a pile of catch-up posts. Before posting it checks length, duplicates, how links are counted, and key expiry, and one tool tells you how many drafts are left and when the next post goes out. Your AI (Claude Code / Codex) writes the post text; the kit itself uses no generative-AI key. It does not auto-reply, like or follow, and it has no auto-stop based on view counts.

The fixes baked into this kit

  1. Posts within the limit get rejected as "too long"X counts a URL as 23 characters regardless of its real length, but the kit was measuring the real length (54 characters), so it rejected posts that were actually within the limit. Links are now split into a link: line and counted as 23 characters.
  2. Posting cost came out 13x higher than expectedAny post whose text contains a URL is billed at $0.200 instead of $0.015. A daily cap on link posts was added, with the overflow carried to the next day.
  3. 401 errors start out of nowhere one dayRefreshing the key also rotates the refresh token, and the new one was not being saved. The order was changed to save first, then use.
  4. Overnight posts vanish, or several show up at once in the morningA design that only fires at the exact time misses everything while the laptop lid is closed. It now wakes hourly, posts only the one that was missed, and drops anything too overdue.
  5. Five days with zero posts went unnoticedAn auto-stop that paused posting when the last 3 posts' views fell below 20% of the median misfired when recent views were 0 and the median was 2, normal noise with only 2 followers. The auto-stop was removed in favor of a status check tool.
  6. Posting stopped when an external AI became unavailableDraft text generation depended on an outside AI API. The kit no longer generates text at all -- your own AI writes it.
  7. The same post appears twiceA scheduled run overlapping a manual run, or retrying after no response, produced duplicates. A lock now prevents overlapping runs, and a 'send started' record is written before posting so it is never retried blindly.
  8. A deleted draft still posted, or an old version posted after editingThe queue held a copy of the text from when it was scheduled. It is now re-synced to the current draft every time the queue is rebuilt.
  9. Clicking "Allow" during authorization does nothingThe callback address was shown before the server was ready to receive it. It is now shown only after the server starts listening.
  10. Authorization gets rejected even though settings look filled inA placeholder left in .env does not look empty, so it passed as configured. Placeholder-shaped values are now detected and treated as unset.

What's inside

  • A step-by-step flow guide and a list of X's rules
  • A tool to connect to X (run once)
  • A tool that assigns posting times to drafts
  • A tool that checks whether it is ready to post
  • A tool to post one test message right away
  • A mechanism that runs hourly and catches up on missed posts
  • A self-test that checks the kit actually works (never touches X)
  • 3 sample drafts
File list (30)
  • .env.example
  • .gitignore
  • AGENTS.md
  • CLAUDE.md
  • KIT.md
  • config.example.json
  • drafts/README.md
  • rules/CHECK.md
  • rules/FLOW.md
  • rules/PROMPTS.md
  • rules/SPEC.md
  • rules/TONE.md
  • samples/1.md
  • samples/2.md
  • samples/3.md
  • secrets/README.md
  • tools/check.mjs
  • tools/lib/auth.mjs
  • tools/lib/cli.mjs
  • tools/lib/lock.mjs
  • tools/lib/store.mjs
  • tools/lib/text.mjs
  • tools/lib/when.mjs
  • tools/lib/x.mjs
  • tools/plan.mjs
  • tools/post.mjs
  • tools/run.mjs
  • tools/schedule.mjs
  • tools/selftest.mjs
  • tools/setup.mjs

The first three decisions

  1. Posting times (default: 9:00 and 20:00)
  2. Tone (default: polite form, no hashtags, 0-1 emoji)
  3. How many link posts per day (default: 1)

What you need

  • No extra costClaude Code or CodexEither works
  • No extra costNode.js (18+)Only needed to run the tools
  • No extra costA computerTested on Mac. Linux and Windows are unverified
  • Extra costAn X developer accountRequires a pay-as-you-go plan. There is no free tier
  • Extra costPer-post cost$0.015 per post, $0.200 if the text contains a URL (as of August 2026 -- verify yourself)

How to use

Just paste this into your AI.

I want to use the nice to have kit "X Auto-Post Kit". Follow https://nicetohave.app/en/g/SLNE8J2G-•••••••••• and set it up.

Works the same in Claude Code or Codex.
Read what this tells your AI to do, before you paste it

If you would rather take the files yourself

Paste the line above and your AI fetches it. If your AI cannot fetch it, or you would rather download it yourself, start here.

Download the kit as a zip

  1. Unpack the zip you downloaded
  2. Open the resulting folder in Claude Code or Codex (in VS Code, "Open Folder")
  3. Type "start building with this kit". The instructions are inside (Claude Code reads CLAUDE.md, Codex reads AGENTS.md)

FAQ

Can I post images or videos?
No. It only posts text and links.
What happens to posts on days my computer stays closed?
The kit only runs while your computer is awake, so nothing goes out while it's closed. If a post is no more than 3 hours late, one post goes out when you open it; anything later is dropped, and the next time you schedule your drafts it moves to a slot on another day.
How much will it cost per month?
At two posts a day with one of them carrying a link, expect roughly 6-7 USD a month (at August 2026 prices). If your X account balance runs out, everything stops, posting included, until you top it up.
How many drafts should I keep ready?
Write at least five at a time. On a day the drafts run out, nothing gets posted. Once a week, run the check tool, and add more when fewer than two days' worth are left.
Is it safe to give this kit folder to someone else?
Before handing it over, empty .env, secrets/, queue.json, posted/ and drafts/. If secrets/ is still in there, the other person can post from your account.

Reviews

Used it? Leave a rating
A few words are optional. A thank-you, or show off what you made. It goes to the maker.
Sign in with GitHub to write

Supporters

Once support opens, the people who backed this kit will be listed here.

Publisher
shuto-shinoda
Published
2026/09/29
Price
Free
Category
Delegate work
Personal data
Not handled
Security review
Not needed (no personal data)
What's inside
A step-by-step flow guide and a list of X's rulesA tool to connect to X (run once)A tool that assigns posting times to draftsA tool that checks whether it is ready to postA tool to post one test message right awayA mechanism that runs hourly and catches up on missed postsA self-test that checks the kit actually works (never touches X)3 sample drafts

More kits