Read and write X: post and delete tweets, search recent tweets, like tweets, send DMs. Trigger phrases: x, twitter, tweet.
npx skills add https://github.com/Anil-matcha/awesome-muse-connectors --skill x
Use the user's X account: post and delete tweets, search recent tweets, like tweets, and send DMs. Use when the user mentions X, Twitter, or tweets.
All commands go through bin/x.py:
bin/x.py auth # verify the OAuth token
bin/x.py post --text "hello world" # post a tweet
bin/x.py search --query "AI agents" --limit 10 # search recent tweets
bin/x.py like --tweet-id 1234567890 # like a tweet (resolves your user ID first)
bin/x.py dm --user-id 1234567890 --text "hello" # send a DM
bin/x.py delete --tweet-id 1234567890 # delete a tweet
Liking a tweet needs your numeric user ID: the CLI resolves it via /2/users/me before calling /2/users/{id}/likes, so you never have to pass it yourself.
x (credential is collected as custom.x)credentials.request_api_access); authorize URL https://x.com/i/oauth2/authorize, token URL https://api.x.com/2/oauth2/tokentweet.read, tweet.write, users.read, like.read, like.write, dm.read, dm.write, offline.accessapi.x.combin/x.py auth (must return "ok": true)post, like, dm, and delete are writes: confirm the exact text and target with the user before running, unless standing permission exists.search usage modest: every search call is a billed read.🧪 Draft: written from X's public API docs; not yet live-tested end-to-end.
Take anil-matcha/x from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.