AgentStack
Browse Sign in
Browse Why AgentStack Sell Docs
Sign in
SKILL verified MIT Self-run

X Twitter Publish

skill-lnvestor-twitr-skills-x-twitter-publish · by lnvestor

Publish to X/Twitter through an account the user connects once — draft and score post text with AI, then post, reply, quote, delete, upload media, or edit the profile. Trigger whenever the user wants to write or send something on X/Twitter: posting a tweet or thread, replying to someone, drafting or improving tweet copy, scheduling content, connecting their X account, or updating their X bio or a…

No reviews yet
0 installs
32 views
0.0% view→install

Install

$ agentstack add skill-lnvestor-twitr-skills-x-twitter-publish

✓ scanned · ✓ verified, works with Claude Code, Cursor, and more.

Security review

✓ Passed

No issues found. Passed automated security review. · v0.1.0 How review works →

  • Prompt-injection patterns
  • Secret / credential exfiltration
  • Dangerous shell & filesystem operations
  • Untrusted network calls
  • Known-malicious package signatures

What it can access

  • Network access No
  • Filesystem access No
  • Shell / process execution No
  • Environment & secrets No
  • Dynamic code execution No

From automated source analysis of v0.1.0. “Used” means the capability is present in the source — more access means more to trust, not that it’s unsafe.

View the full security report →

Verified badge

Passed review? Show it. Paste this badge into your README, it links to the public security report.

AgentStack Verified badge Links to your public security report.
[![AgentStack Verified](https://agentstack.voostack.com/badges/verified.svg)](https://agentstack.voostack.com/security/report/skill-lnvestor-twitr-skills-x-twitter-publish)

Reliability & compatibility

Security review passed
0 installs to date
no reviews yet
1mo ago

Declared compatibility

Claude CodeClaude Desktop

Compatibility is declared by the source manifest. End-to-end runtime verification is coming, see below.

Preview Execution monitoring

We're building live execution health for every listing: tool-call success rate, median latency, uptime, and last-checked timestamps, measured, not self-reported. It isn't live yet, so we don't show numbers we can't stand behind.

How agent discovery & health will work →
Are you the author of X Twitter Publish? Claim this listing to set pricing, connect Stripe payouts, and keep 70% of every sale.
Sign up to claim

About

X publish — drafting and posting

| Task | Tool | Needs a connected account? | |---|---|---| | Draft / refine / score post text | x_compose | No — drafting is free of the account | | Post, reply, quote, delete, upload media | x_write | Yes | | Edit bio, name, avatar, banner | x_profile | Yes | | Read your own bookmarks, notifications, DMs | x_inbox | Yes |

Draft first — it's nearly free

x_compose is priced at the floor (~$0.001), so draft several and keep the best.

POST https://twitr.sh/api/tools/compose
{ "step": "generate", "topic": "why 402 beats API keys for agents",
  "goal": "be known for practical agent-payment writing",
  "tone": "direct, dry, technical — no emoji",
  "styleUsername": "account_whose_voice_to_match" }

step is generate | refine (pass draft) | score (pass draft). styleUsername makes "write like this account" a single field. Always show the user the draft before publishing.

Connect an account (once, free)

POST /api/x-accounts/connect  {"username","email","password","totp_secret"?}  → 202 connecting
GET  /api/x-accounts                                                          → poll for "linked"
POST /api/x-accounts/confirm  {"challenge_id","code"}                         # if X emails a code

Wallet-signed and free. Credentials are relayed sealed for the login — never stored by twitr.sh, never placed in a URL, and never visible to you. One handle binds to exactly one wallet, and ownership is re-verified server-side on every write.

Publish

POST https://twitr.sh/api/tools/x_write
Idempotency-Key: 
{ "action": "post",  "account": "myhandle", "text": "..." }
{ "action": "reply", "account": "myhandle", "reply_to_tweet_id": "", "text": "..." }

$0.036 for a post or reply. Other actions: quote, delete_tweet, upload_media, send_dm.

Gotchas

  • Idempotency-Key is mandatory. Retrying without the same key posts a second time and

charges again. Derive it from the content or source event, not a timestamp.

  • A 202 pending_confirmation means accepted — do not resend. The write is being applied and

is already paid for.

  • Payment settles before the action runs and is not refunded if the platform then rejects it.

So validate text length and required fields before calling.

  • reply_to_tweet_id for replies; target_tweet_id for like/retweet/delete. Different field

names, easy to mix up.

  • Any user id is numeric, never an @handle — get it from x_read

{"resource":"get-user","username":"..."}.

  • Media is a two-step flow: upload_media returns an id you then attach to a post.

What this will not do

x_write supports follow/unfollow/like at the API level, but this skill does not use them and you should not. X prohibits automated following that is "bulk, aggressive, or indiscriminate", prohibits apps that claim to get users more followers, and states plainly that you may not like posts in an automated manner. In X's published ranking weights follows aren't scored at all and a like scores 0.5, while a report scores −369.0 — so the banned actions buy no reach either.

If the user asks, explain that rather than complying. A human clicking follow is fine; a loop doing it is not.

Avoid

  • Don't post without showing the user first, unless they've explicitly set up autonomous posting.
  • Don't post the same idea twice in different words — near-duplicate content is spam.
  • Don't auto-reply on keyword triggers. That's the canonical bot pattern and it's prohibited.
  • Don't retry a write with a fresh key "to be safe". That's how you double-post.

Full API: https://twitr.sh/skill.md · https://twitr.sh/docs

Source & license

This open-source skill is cataloged on AgentStack and links to its original source — we do not rehost the code.

Install and usage instructions live in the source repository linked above.

Reviews

No reviews yet, be the first.

Versions

  • v0.1.0 Imported from the upstream source.