Last updated: October 27, 2026 · post-to-x v1.1.0
The agent skill that posts to X
post-to-x is one SKILL.md file that lets your coding agent publish, schedule and thread on X through the OpenTweet API. Download it into your agent's skills folder, set OPENTWEET_API_KEY, and ask it to tweet. The same file works in Claude Code, Codex, Gemini CLI, DeepSeek Harness, Hermes Agent and OpenClaw.
# Codex, Gemini CLI and DeepSeek Harness all read ~/.agents/skills
mkdir -p ~/.agents/skills/post-to-x
curl -fsSL https://opentweet.io/skills/post-to-x/SKILL.md -o ~/.agents/skills/post-to-x/SKILL.md
export OPENTWEET_API_KEY=ot_your_keyRead it before you install it: opentweet.io/skills/post-to-x/SKILL.md. No X developer account needed.
7-day free trial with a few limits, or pay now for full limits.
Install it in your agent
Every agent reads skills from a different folder. Codex, Gemini CLI and DeepSeek Harness share ~/.agents/skills, so one copy there covers all three.
Claude Code
~/.claude/skills/ (project: .claude/skills/)mkdir -p ~/.claude/skills/post-to-x && curl -fsSL https://opentweet.io/skills/post-to-x/SKILL.md -o ~/.claude/skills/post-to-x/SKILL.mdCodex
~/.agents/skills/ (project: .agents/skills/)mkdir -p ~/.agents/skills/post-to-x && curl -fsSL https://opentweet.io/skills/post-to-x/SKILL.md -o ~/.agents/skills/post-to-x/SKILL.mdGemini CLI
~/.gemini/skills/ or ~/.agents/skills/mkdir -p ~/.agents/skills/post-to-x && curl -fsSL https://opentweet.io/skills/post-to-x/SKILL.md -o ~/.agents/skills/post-to-x/SKILL.mdDeepSeek Harness
~/.agents/skills/ or ~/.dsh/skills/mkdir -p ~/.agents/skills/post-to-x && curl -fsSL https://opentweet.io/skills/post-to-x/SKILL.md -o ~/.agents/skills/post-to-x/SKILL.mdHermes Agent
~/.hermes/skills/mkdir -p ~/.hermes/skills/post-to-x && curl -fsSL https://opentweet.io/skills/post-to-x/SKILL.md -o ~/.hermes/skills/post-to-x/SKILL.mdOpenClaw
~/.openclaw/skills/clawhub install opentweet-x-posterFolders change between releases. If a skill does not load, check your agent's skills docs or its /skills command. Hermes and Gemini CLI pick up new skills in a new session.
What the skill does
- Checks the connection and today's remaining posts before it writes anything.
- Publishes now, schedules for a time, saves drafts and posts threads.
- Posts from a specific X account when you have several.
- Shows you the text and waits for a yes before publishing, unless you said "post now".
- Reports the real X post URL from the response, and reports errors as errors.
Things to ask once it is installed:
- "Tweet that v2.4 is live, with the two biggest changes."
- "Turn docs/launch.md into a 5-tweet thread and schedule it for Tuesday 15:00 UTC."
- "Write a post about today's commits and save it as a draft."
- "Schedule one post a day this week from ideas.txt."
Scheduled posts do not need the agent running
When the agent schedules a post, OpenTweet publishes it at that time. Close the terminal and it still goes out.Skill or MCP server?
They use the same key and the same account, so you can run both. Many people keep the MCP server for tools and edit the skill to hold their own voice, cadence and review rules. See how to write your own SKILL.md.
Frequently asked questions
Is there a Claude Code skill that posts to X?
Yes. The OpenTweet post-to-x skill is one SKILL.md file. Install it with: mkdir -p ~/.claude/skills/post-to-x && curl -fsSL https://opentweet.io/skills/post-to-x/SKILL.md -o ~/.claude/skills/post-to-x/SKILL.md, then export OPENTWEET_API_KEY. Claude Code loads it when you ask it to tweet, schedule a post or publish a thread.
Which folder do agent skills go in?
It depends on the agent. Claude Code reads ~/.claude/skills. Codex, Gemini CLI and DeepSeek Harness all read the shared ~/.agents/skills folder. Hermes Agent reads ~/.hermes/skills and OpenClaw ~/.openclaw/skills. Each skill is a folder named after the skill with a SKILL.md inside.
Does one SKILL.md work in every agent?
Yes. Agent Skills is a shared format: YAML frontmatter with name and description, then markdown instructions. The OpenTweet skill uses only plain HTTP calls through the agent's shell tool, so the same file works in every agent above.
Skill or MCP server: which should I use to post to X?
Both work with the same ot_ key. A skill needs nothing but a shell and curl, and you can read every line of it. The MCP server at https://mcp.opentweet.io/mcp gives typed tools, 43 of them, including evergreen queues, media upload, X Articles and analytics. A common setup is MCP for the tools plus a short skill for your voice and posting rules.
Do I need an X developer account for the skill?
No. You log in to X once in OpenTweet and create an ot_ key. X API fees are included in the plan: $19.99/mo, or $29/mo with 10 link posts a day.
Is it safe to install a skill from a URL?
Read it first: a skill is instructions your agent will follow. Open the URL in a browser before you install it. The OpenTweet skill only calls opentweet.io, reads the key from an environment variable and tells the agent never to print it or publish without confirmation.
Keep exploring
Agent setups that post to X with one key.
Claude Code Twitter skill
Claude Code specifics: project vs user skills, MCP in one command.
Write your own SKILL.md
How the file works, line by line, and how to add your own rules.
DeepSeek Harness
MCP entry for dsh, plus headless runs on cron.
Hermes Agent
Add OpenTweet to ~/.hermes/config.yaml.
API or MCP for posting?
When a skill with HTTP calls is enough.
OpenTweet MCP server
43 typed tools for X, Bluesky and LinkedIn.
Teach your agent to post to X
One SKILL.md, one key, every agent. No X developer account.
7-day free trial with a few limits, or pay now for full limits.