Agent skill

Xitter

by RedWoodOG in RedWoodOG/Hermes-Desktop

Interact with X/Twitter via the x-cli terminal client using official X API credentials.

MITAuto-check: notesWriting & Content

Install Xitter

skills CLI
$ npx skills add RedWoodOG/Hermes-Desktop --skill xitter -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install RedWoodOG/Hermes-Desktop xitter --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/RedWoodOG/Hermes-Desktop.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/social-media/xitter .claude/skills/xitter && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
xitter
GitHub stars
177
Token cost
~1.5k tokens
SKILL.md length
585 words
Files
1
Skills in repo
62
Repo updated
First seen
Licence
MIT

At a glance

Interact with X/Twitter via the x-cli terminal client using official X API credentials.

  • Works in 4 steps: Create or open your app → In user authentication settings, set… → Generate or regenerate the access token… → …
  • Reading timelines
  • SKILL.md covers Important Cost / Access Note, Install, Credentials and Cost / Friction Reality Check, plus 7 more sections
  • Calls uv; reaches github.com and x.com; needs X_API_KEY and X_API_SECRET

What it does

Xitter is an agent skill from RedWoodOG/Hermes-Desktop. Interact with X/Twitter via the x-cli terminal client using official X API credentials. Use for posting, reading timelines, searching tweets, liking, retweeting, bookmarks, mentions, and user lookups.

Its SKILL.md is about 1.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

It sits in Writing & Content, covering Social media posts. It works with X (Twitter). The licence is MIT.

When your agent uses it

  • Reading timelines
  • Searching tweets

Example prompts

  • “/xitter”

Requirements

  • A credential in X_API_KEY
  • A credential in X_API_SECRET

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. Create or open your app
  2. In user authentication settings, set permissions to Read and write
  3. Generate or regenerate the access token + access token secret after enabling write permissions
  4. Save all five values carefully — missing any one of them will usually produce confusing auth or permission errors

What it can do on your machine

Read from SKILL.md and the folder at commit be46b39. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • uv

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • github.com
    • x.com

    Also links to:

    • developer.x.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • X_API_KEY
    • X_API_SECRET
    • X_BEARER_TOKEN
    • X_ACCESS_TOKEN
    • X_ACCESS_TOKEN_SECRET

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Xitter loads about 1.5k tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 585 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~1.5k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check: notes

The automated check noted patterns worth knowing about, such as sudo or a known installer.

  • NoteMentions a .env fileSKILL.md:93
    ooks for credentials in `~/.config/x-cli/.env`.
  • NoteMentions a .env fileSKILL.md:95
    dy keep your X credentials in `~/.hermes/.env`, the cleanest setup is:
  • NoteMentions a .env fileSKILL.md:99
    ln -sf ~/.hermes/.env ~/.config/x-cli/.env
  • NoteMentions a .env fileSKILL.md:106
    cat > ~/.config/x-cli/.env <<'EOF'
  • NoteMentions a .env fileSKILL.md:113
    chmod 600 ~/.config/x-cli/.env
  • NoteMentions a .env fileSKILL.md:195
    ft**: if you rotate tokens in `~/.hermes/.env`, make sure `~/.config/x-cli/.env` still points at the current file.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from RedWoodOG/Hermes-Desktop at commit be46b39, republished under its MIT licence (© RedWoodOG). 585 words, ~1,533 tokens.

Download SKILL.mdSave it as .claude/skills/xitter/SKILL.md (or your agent's skills folder).
name
xitter
description
Interact with X/Twitter via the x-cli terminal client using official X API credentials. Use for posting, reading timelines, searching tweets, liking, retweeting, bookmarks, mentions, and user lookups.
version
1.0.0
author
Siddharth Balyan + Hermes Agent
license
MIT
platforms
linux, macos
prerequisites.commands
uv
prerequisites.env_vars
X_API_KEY, X_API_SECRET, X_BEARER_TOKEN, X_ACCESS_TOKEN, X_ACCESS_TOKEN_SECRET

Xitter — X/Twitter via x-cli

Use x-cli for official X/Twitter API interactions from the terminal.

This skill is for:

  • posting tweets, replies, and quote tweets
  • searching tweets and reading timelines
  • looking up users, followers, and following
  • liking and retweeting
  • checking mentions and bookmarks

This skill intentionally does not vendor a separate CLI implementation into Hermes. Install and use upstream x-cli instead.

Important Cost / Access Note

X API access is not meaningfully free for most real usage. Expect to need paid or prepaid X developer access. If commands fail with permissions or quota errors, check your X developer plan first.

Install

Install upstream x-cli with uv:

bash
uv tool install git+https://github.com/Infatoshi/x-cli.git

Upgrade later with:

bash
uv tool upgrade x-cli

Verify:

bash
x-cli --help

Credentials

You need these five values from the X Developer Portal:

  • X_API_KEY
  • X_API_SECRET
  • X_BEARER_TOKEN
  • X_ACCESS_TOKEN
  • X_ACCESS_TOKEN_SECRET

Get them from:

Why does X need 5 secrets?

Unfortunately, the official X API splits auth across both app-level and user-level credentials:

  • X_API_KEY + X_API_SECRET identify your app
  • X_BEARER_TOKEN is used for app-level read access
  • X_ACCESS_TOKEN + X_ACCESS_TOKEN_SECRET let the CLI act as your user account for writes and authenticated actions

So yes — it is a lot of secrets for one integration, but this is the stable official API path and is still preferable to cookie/session scraping.

Setup requirements in the portal:

  1. Create or open your app
  2. In user authentication settings, set permissions to Read and write
  3. Generate or regenerate the access token + access token secret after enabling write permissions
  4. Save all five values carefully — missing any one of them will usually produce confusing auth or permission errors

Note: upstream x-cli expects the full credential set to be present, so even if you mostly care about read-only commands, it is simplest to configure all five.

Cost / Friction Reality Check

If this setup feels heavier than it should be, that is because it is. X’s official developer flow is high-friction and often paid. This skill chooses the official API path because it is more stable and maintainable than browser-cookie/session approaches.

If the user wants the least brittle long-term setup, use this skill. If they want a zero-setup or unofficial path, that is a different trade-off and not what this skill is for.

Show full SKILL.md (227 more words)Show less

Where to Store Credentials

x-cli looks for credentials in ~/.config/x-cli/.env.

If you already keep your X credentials in ~/.hermes/.env, the cleanest setup is:

bash
mkdir -p ~/.config/x-cli
ln -sf ~/.hermes/.env ~/.config/x-cli/.env

Or create a dedicated file:

bash
mkdir -p ~/.config/x-cli
cat > ~/.config/x-cli/.env <<'EOF'
X_API_KEY=your_consumer_key
X_API_SECRET=your_secret_key
X_BEARER_TOKEN=your_bearer_token
X_ACCESS_TOKEN=your_access_token
X_ACCESS_TOKEN_SECRET=your_access_token_secret
EOF
chmod 600 ~/.config/x-cli/.env

Quick Verification

bash
x-cli user get openai
x-cli tweet search "from:NousResearch" --max 3
x-cli me mentions --max 5

If reads work but writes fail, regenerate the access token after confirming Read and write permissions.

Common Commands

Tweets
bash
x-cli tweet post "hello world"
x-cli tweet get https://x.com/user/status/1234567890
x-cli tweet delete 1234567890
x-cli tweet reply 1234567890 "nice post"
x-cli tweet quote 1234567890 "worth reading"
x-cli tweet search "AI agents" --max 20
x-cli tweet metrics 1234567890
Users
bash
x-cli user get openai
x-cli user timeline openai --max 10
x-cli user followers openai --max 50
x-cli user following openai --max 50
Self / Authenticated User
bash
x-cli me mentions --max 20
x-cli me bookmarks --max 20
x-cli me bookmark 1234567890
x-cli me unbookmark 1234567890
Quick Actions
bash
x-cli like 1234567890
x-cli retweet 1234567890

Output Modes

Use structured output when the agent needs to inspect fields programmatically:

bash
x-cli -j tweet search "AI agents" --max 5
x-cli -p user get openai
x-cli -md tweet get 1234567890
x-cli -v -j tweet get 1234567890

Recommended defaults:

  • -j for machine-readable output
  • -v when you need timestamps, metrics, or metadata
  • plain/default mode for quick human inspection

Agent Workflow

  1. Confirm x-cli is installed
  2. Confirm credentials are present
  3. Start with a read command (user get, tweet search, me mentions)
  4. Use -j when extracting fields for later steps
  5. Only perform write actions after confirming the target tweet/user and the user's intent

Pitfalls

  • Paid API access: many failures are plan/permission problems, not code problems.
  • 403 oauth1-permissions: regenerate the access token after enabling Read and write.
  • Reply restrictions: X restricts many programmatic replies. tweet quote is often more reliable than tweet reply.
  • Rate limits: expect per-endpoint limits and cooldown windows.
  • Credential drift: if you rotate tokens in ~/.hermes/.env, make sure ~/.config/x-cli/.env still points at the current file.

Notes

  • Prefer official API workflows over cookie/session scraping.
  • Use tweet URLs or IDs interchangeably — x-cli accepts both.
  • If bookmark behavior changes upstream, check the upstream README first: https://github.com/Infatoshi/x-cli

© RedWoodOG, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in skills/social-media/xitter of RedWoodOG/Hermes-Desktop.

Open the folder on GitHubat commit be46b39

Compare with similar skills

Xitter next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Xitter compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Xitter this skillRedWoodOG/Hermes-Desktop177—~1.5kAutomated safety check: NotesMIT
Socialcoreyhaines31/marketingskills54k4 repos~4.5kAutomated safety check: PassMIT
Social Contentfreekmurze/dotfiles1k23 repos~2.1kAutomated safety check: PassNone
Typefullyfreekmurze/dotfiles1k1 repos~3.4kAutomated safety check: NotesNone
Changelog Social RecapFlorianBruniaux/claude-code-ultimate-guide6.1k—~1.8kAutomated safety check: NotesCC-BY-SA-4.0
X Mastery Mentoralchaincyf/x-mentor-skill1.2k—~2.3kAutomated safety check: PassMIT

Similar skills

  • Social

    coreyhaines31/marketingskills

    When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, or Facebook, or wants to do social listening and engagement triage.

    54k GitHub starsUsed in 4 repos~4.5k tokens
    Writing & ContentAuto-check passed
  • Social Content

    freekmurze/dotfiles

    When the user wants help creating, scheduling, or optimizing social media content for LinkedIn, Twitter/X, Instagram, TikTok, Facebook, or other platforms.

    1k GitHub starsUsed in 23 repos~2.1k tokens
    Writing & ContentAuto-check passed
  • Typefully

    freekmurze/dotfiles

    Create, schedule, and manage social media posts via Typefully.

    1k GitHub starsUsed in 1 repo~3.4k tokens
    Writing & ContentAuto-check: notes
  • Changelog Social Recap

    FlorianBruniaux/claude-code-ultimate-guide

    Turns CHANGELOG.md entries for a release or a week into LinkedIn, Twitter/X, newsletter and Slack posts in French and English.

    6.1k GitHub stars~1.8k tokensUpdated today
    Writing & ContentAuto-check: notes
  • X Mastery Mentor

    alchaincyf/x-mentor-skill

    $10K/hr级X/Twitter运营导师。基于Nicolas Cole、Dickie Bush、Sahil Bloom、Justin Welsh、 Dan Koe、Alex Hormozi六位顶级创作者的方法论 + X开源算法深度分析 + AI/科技赛道专精策略, 提炼6个核心心智模型、10条决策启发式、完整的选题-写作-增长操作手册。

    1.2k GitHub stars~2.3k tokensUpdated 1 mo ago
    Writing & ContentAuto-check passed
  • Voice Builder

    charlie947/social-media-skills

    Build a personalised voice profile inside a Codex or Claude project from a short interview plus 3 to 5 sample pieces of writing.

    3.8k GitHub stars~3.3k tokensUpdated 26 days ago
    Writing & ContentAuto-check passed

More from RedWoodOG/Hermes-Desktop

All 62 skills in this repo
  • Excalidraw

    RedWoodOG/Hermes-Desktop

    Create hand-drawn style diagrams using Excalidraw JSON format.

    177 GitHub starsUsed in 5 repos~1.8k tokens
    Auto-check passed
  • Obliteratus

    RedWoodOG/Hermes-Desktop

    Remove refusal behaviors from open-weight LLMs using OBLITERATUS — mechanistic interpretability techniques (diff-in-means, SVD, whitened SVD, LEACE, SAE decomposition, etc.) to excise guardrails…

    177 GitHub starsUsed in 5 repos~3.8k tokens
    Auto-check passed
  • Ascii Video

    RedWoodOG/Hermes-Desktop

    Production pipeline for ASCII art video — any format. An agent skill from RedWoodOG/Hermes-Desktop.

    177 GitHub starsUsed in 2 repos~3.2k tokens
    Auto-check passed
  • Systematic Debugging

    RedWoodOG/Hermes-Desktop

    A skill your agent uses when encountering any bug, test failure, or unexpected behavior.

    177 GitHub starsUsed in 6 repos~2.6k tokens
    Auto-check passed
  • Test Driven Development

    RedWoodOG/Hermes-Desktop

    A skill your agent uses when implementing any feature or bugfix, before writing implementation code.

    177 GitHub starsUsed in 6 repos~2.4k tokens
    Auto-check passed
  • Claude Code

    RedWoodOG/Hermes-Desktop

    Delegate coding tasks to Claude Code (Anthropic's CLI agent).

    177 GitHub starsUsed in 4 repos~784 tokens
    Auto-check passed

Works with

Questions about Xitter

What does Xitter do?

Interact with X/Twitter via the x-cli terminal client using official X API credentials. Xitter is an agent skill from RedWoodOG/Hermes-Desktop. Interact with X/Twitter via the x-cli terminal client using official X API credentials.

When should I use Xitter?

Xitter fits situations like: reading timelines; searching tweets.

How do I install Xitter in Claude Code?

Run `npx skills add RedWoodOG/Hermes-Desktop --skill xitter -a claude-code`. Or copy the skill folder (skills/social-media/xitter in RedWoodOG/Hermes-Desktop) into .claude/skills/xitter in your project. Claude Code loads it when a task matches its description.

How do I install Xitter in Codex?

Run `npx skills add RedWoodOG/Hermes-Desktop --skill xitter -a codex`. Or copy the skill folder (skills/social-media/xitter in RedWoodOG/Hermes-Desktop) into .agents/skills/xitter in your project. Codex loads it when a task matches its description.

Can I use Xitter in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add RedWoodOG/Hermes-Desktop --skill xitter -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/xitter, .gemini/skills/xitter, .github/skills/xitter and .opencode/skills/xitter in your project.

What does Xitter need to run?

Going by SKILL.md and its folder, Xitter needs the command-line tools its instructions call (uv) and credentials named X_API_KEY, X_API_SECRET, X_BEARER_TOKEN and X_ACCESS_TOKEN. Our summary lists: A credential in X_API_KEY; A credential in X_API_SECRET.

Does Xitter access the network?

SKILL.md names 3 domains. In commands or code: github.com and x.com; the agent is likely to contact these when it follows the instructions. As links in the text: developer.x.com. This is read from the text; nothing was executed.

Is Xitter safe to install?

Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.

What licence does Xitter use?

Xitter is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Xitter use?

About 1.5k tokens (SKILL.md is roughly 6.1k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Xitter?

Skills that share tags, products or a category with Xitter: Social (coreyhaines31/marketingskills, 54k stars), Social Content (freekmurze/dotfiles, 1k stars), Typefully (freekmurze/dotfiles, 1k stars) and Changelog Social Recap (FlorianBruniaux/claude-code-ultimate-guide, 6.1k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Xitter?

RedWoodOG (a GitHub user) maintains it in RedWoodOG/Hermes-Desktop, which has 177 GitHub stars. The repository holds 62 skills in this directory. The repository was last updated on May 30, 2026.

Source: RedWoodOG/Hermes-Desktop on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.