{
  "markdown": "# TweetClaw: OpenClaw Twitter Search, Followers & Automation\n\n> **Xquik is an independent third-party service.** Not affiliated with X Corp.\n> \"Twitter\" and \"X\" are trademarks of X Corp.\n\n[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/13730/badge)](https://www.bestpractices.dev/projects/13730)\n[![npm](https://img.shields.io/npm/v/@xquik%2Ftweetclaw.svg)](https://registry.npmjs.org/@xquik%2ftweetclaw)\n[![npm downloads](https://img.shields.io/npm/dm/@xquik/tweetclaw.svg)](https://registry.npmjs.org/@xquik%2ftweetclaw)\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](LICENSE)\n![GitHub stars](https://img.shields.io/github/stars/Xquik-dev/tweetclaw.svg)\n[![Ask DeepWiki](https://deepwiki.com/badge.svg?url=https%3A%2F%2Fgithub.com%2FXquik-dev%2Ftweetclaw)](https://deepwiki.com/Xquik-dev/tweetclaw)\n[![Context7](https://img.shields.io/badge/Context7-agent_docs-059669)](https://context7.com/xquik-dev/tweetclaw)\n[![Skills.sh](https://www.skills.sh/b/xquik-dev/tweetclaw)](https://www.skills.sh/xquik-dev/tweetclaw)\n[![Skills.sh x-twitter-scraper Skill](https://www.skills.sh/b/xquik-dev/x-twitter-scraper)](https://www.skills.sh/xquik-dev/x-twitter-scraper)\n<a href=\"https://nothumansearch.ai/site/xquik.com\" target=\"_blank\" rel=\"noopener\"><img src=\"https://nothumansearch.ai/badge/xquik.com.svg\" alt=\"NHS Agentic Readiness Score\" height=\"28\"></a>\n[![Apify Actor](https://apify.com/actor-badge?actor=xquik/x-tweet-scraper)](https://apify.com/xquik/x-tweet-scraper)\n\nTweetClaw connects [OpenClaw](https://github.com/openclaw/openclaw) to Xquik for\nTwitter search, follower exports, monitoring, media, and approved X actions. Use\nXquik MCP with remote MCP clients and an SDK in application code.\n\n## Common OpenClaw tasks\n\nUse `explore` before every live call. It returns the current supported route.\n\n| Customer Question | Catalog Query | Next Step |\n| --- | --- | --- |\n| How can I search tweets? | `search tweets by query` | Call the listed read route. |\n| How can I read an X timeline? | `list recent tweets posted by a user` | Approve private timelines. |\n| How can I export followers? | `run extraction` | Choose followers, then approve. |\n| How can I scrape following accounts? | `run extraction` | Choose following, then approve. |\n| How can I monitor an account or keyword? | `create monitor` | Approve recurring usage. |\n| How can I post or reply? | `create tweet` | Approve each write. |\n\n## Read response fields\n\nTweetClaw keeps every allowed Xquik response field. Optional fields remain absent\nwhen X omits them. Request `next_cursor` while `has_next_page` is true.\n\nFetching-account bookmark, like, follow, block, mute, and notification state stays private.\n\nSee [Read Data Richness](https://docs.xquik.com/guides/read-data-richness)\nfor exact tweet, profile, and media fields.\n\n## Install\n\n```bash\nopenclaw plugins install clawhub:@xquik/tweetclaw\n```\n\nOpenClaw records the verified ClawHub publisher scope and package as the update source.\n\nUse `openclaw plugins install npm:@xquik/tweetclaw` when you need the npm fallback.\n\nFor normal upgrades, reuse the tracked install source:\n\n```bash\nopenclaw plugins update tweetclaw\n```\n\nFor reproducible production installs, pin a published npm version:\n\n```bash\nopenclaw plugins install npm:@xquik/tweetclaw@<version> --pin\n```\n\nPinned installs stay pinned during updates. Run\n`openclaw plugins update @xquik/tweetclaw` to return to the stable release line.\n\nSource builds require OpenClaw `2026.7.1` or newer.\n\nIf your OpenClaw install runs with `OPENCLAW_NIX_MODE=1`, plugin lifecycle\nmutators are disabled. Install or update TweetClaw through your Nix OpenClaw\nsource instead of `openclaw plugins install` or `openclaw plugins update`.\n\nInstall TweetClaw before adding credentials if needed. The free `explore`\ncatalog works immediately; live calls return setup guidance.\n\nAgents with skill directories can install the packaged `SKILL.md` through\n[Skills.sh](https://www.skills.sh/xquik-dev/tweetclaw). Use the OpenClaw command\nabove for the plugin runtime.\n\n```bash\nnpx skills add xquik-dev/tweetclaw\n```\n\nTweetClaw is an OpenClaw plugin, not an MCP server. For remote MCP clients, add\n`https://xquik.com/mcp`, then follow the [current client compatibility\npath](https://docs.xquik.com/mcp/overview#client-compatibility). OAuth-capable\nclients complete OAuth 2.1. Clients that support custom bearer headers can use\nan Xquik API key. ChatGPT custom apps require OAuth.\n\n> **Codex OAuth compatibility:** Affected Codex releases discard the RFC 9207\n> `iss` callback value even though Xquik returns it. If Codex reports\n> `Authorization server response missing required issuer: expected https://xquik.com`,\n> use `XQUIK_API_KEY` through the Codex `bearer_token_env_var` setting. Follow the\n> [Codex OAuth troubleshooting guide](https://docs.xquik.com/guides/troubleshooting#codex-oauth-issuer-validation-error)\n> and track [openai/codex#31573](https://github.com/openai/codex/issues/31573).\n\n## Pricing & access\n\nTweetClaw uses Xquik billing for account-backed automation and optional MPP\nreads. See [Billing & Pricing](https://docs.xquik.com/guides/billing). Check it\nfor current plans, eligible endpoints, and live prices.\n\n## Configure\n\n### API key: account-backed X automation\n\nCreate an API key at [dashboard.xquik.com](https://dashboard.xquik.com/), then\nstore it through OpenClaw:\n\n```bash\nopenclaw config set plugins.entries.tweetclaw.config.apiKey \"$XQUIK_API_KEY\"\n```\n\nKeep the key out of chats, documentation, logs, and shell history.\n\n### Credits: pay per use without a subscription\n\nTop up credits from the Xquik dashboard. An API key can spend prepaid credits across 33 public paid-read routes without a subscription. TweetClaw does not create checkout sessions or charge saved payment methods from the agent.\n\n### Direct MPP: accountless pay per use\n\nMachine Payments Protocol (MPP) covers 7 direct MPP routes without an account,\nAPI key, or subscription. Create an MPP account with `mppx account create`.\n\n```bash\nnpm i mppx@0.8.12 viem@2.55.4\nopenclaw config set plugins.entries.tweetclaw.config.tempoSigningKey \"$MPP_SIGNING_KEY\"\n```\n\nKeep the signing key in local OpenClaw config. Never put it in prompts or logs.\n\nDirect MPP covers tweet lookup, user lookup, follower check, article lookup,\ntrends, X trends, and community info. Other paid reads use prepaid credits.\nMedia downloads and galleries require account-backed access.\n\n### Enable live API calls\n\nOpenClaw always loads the local `explore` catalog. The `tweetclaw` API tool is\noptional because it can read private data, spend credits, or change X accounts.\nAdd both tools without replacing the current profile:\n\n```bash\nopenclaw config set tools.alsoAllow '[\"explore\", \"tweetclaw\"]'\n```\n\nVerify runtime registration and packed releases with the [OpenClaw setup guide](docs/openclaw-setup.md).\n\n### Optional settings\n\n```bash\nopenclaw config set plugins.entries.tweetclaw.config.baseUrl \"https://xquik.com\"\nopenclaw config set plugins.entries.tweetclaw.config.pollingEnabled true\nopenclaw config set plugins.entries.tweetclaw.config.pollingInterval 60\n```\n\nOnly change `baseUrl` for a self-hosted Xquik-compatible API. TweetClaw requires an HTTPS base URL with no embedded credentials.\n\n## OpenClaw trust model\n\nTweetClaw uses 2 OpenClaw gates:\n\n- Optional tool exposure: `explore` is always safe local catalog search, while\n  `tweetclaw` stays optional until the user allows it with `tools.alsoAllow`.\n- Per-call approval: write-like, private, paid, recurring, extraction, monitor,\n  webhook, and account-scoped calls trigger a plugin approval prompt. TweetClaw\n  offers one-time approval or deny for those calls so a social-account action is\n  reviewed each time.\n\nThese gates prevent unattended publishing. Examples include Twitter search before\ndrafting, reply review before draws, follower exports, approved media posts,\nuser-created monitors, and reviewed webhook automation.\n\n## Tools\n\n### `explore` (free, no network)\n\nSearch the bundled API catalog without a network request.\n\n### `tweetclaw` (invoke API endpoints)\n\nInvoke catalog-listed endpoints with structured fields. The runtime injects\nauthentication. X writes also require `idempotencyKey`.\n\nThis tool is optional in OpenClaw. If your agent can see the skill but cannot call TweetClaw tools, add `explore` and `tweetclaw` to `tools.alsoAllow` so your normal tool profile stays intact.\n\nOpenClaw approval prompts are enforced before write-like `tweetclaw` tool calls. Review the structured request before approving any post, delete, follow, DM, monitor, extraction, webhook, or profile-change action. Risky calls offer one-time approval or deny so future social-account actions still require review.\n\n## Commands\n\nInstant responses, no LLM needed:\n\n| Command | Description |\n|---------|-------------|\n| `/xstatus` | Account info, subscription status, usage, credit balance |\n| `/xtrends` | Curated topics with an API key. Worldwide X trends with MPP. |\n| `/xtrends tech` | API-key mode: curated topics in one category. |\n| `/xtrends 23424977` | MPP mode: X trends for one WOEID. |\n\n## Event notifications\n\nWhen polling is enabled, TweetClaw checks user-created monitors every 60 seconds\nand delivers new tweet, reply, quote, or retweet events.\n\nSet up a monitor first:\n\n```\nYou: \"Monitor @elonmusk for new tweets, replies, and retweets\"\n```\n\n## API coverage\n\n102 agent-callable endpoints across 9 categories. Dashboard-only flows stay blocked.\n\n| Category | Examples | Access |\n|----------|---------|--------|\n| **Account** | Account status | Account-backed |\n| **Composition** | Compose, drafts, writing styles, radar | Account-backed |\n| **Credits** | Check balance | Account-backed |\n| **Extraction** | 23 extraction tools, giveaway draws, exports | Account-backed |\n| **Media** | Upload media via URL, authenticated media download, gallery links | Account-backed |\n| **Monitoring** | Create monitors, view events, manage webhooks | Account-backed |\n| **Twitter** | Search, lookups, timelines, articles, trends, bookmarks, notifications | Account-backed or MPP where eligible |\n| **X Accounts** | List connected account handles for explicit user-selected actions | Account-backed |\n| **X Write** | Post, reply, like, retweet, follow, remove follower, DM, profile, communities | Account-backed with approval |\n\n## References\n\n- [Xquik Platform](https://xquik.com)\n- [API Documentation](https://docs.xquik.com)\n- [Billing & Pricing](https://docs.xquik.com/guides/billing)\n- [Context7 Agent Docs](https://context7.com/xquik-dev/tweetclaw)\n- [OpenClaw Setup Guide](docs/openclaw-setup.md)\n- [Agent Workflow Guide](docs/agent-workflows.md)\n- Framework guides: [Mastra](https://docs.xquik.com/guides/mastra), [CrewAI](https://docs.xquik.com/guides/crewai), [LangChain](https://docs.xquik.com/guides/langchain), [Pydantic AI](https://docs.xquik.com/guides/pydantic-ai), [Google ADK](https://docs.xquik.com/guides/google-adk), [Microsoft Agent Framework](https://docs.xquik.com/guides/microsoft-agent-framework), [n8n](https://docs.xquik.com/guides/n8n), [Zapier](https://docs.xquik.com/guides/zapier), [Make](https://docs.xquik.com/guides/make), [Pipedream](https://docs.xquik.com/guides/pipedream), [Composio migration](https://docs.xquik.com/guides/composio-migration)\n- [npm Registry Metadata](https://registry.npmjs.org/@xquik%2ftweetclaw)\n- [OpenClaw](https://github.com/openclaw/openclaw)\n\n## License\n\nMIT\n\nXquik is an independent third-party service. Not affiliated with X Corp. \"Twitter\" and \"X\" are trademarks of X Corp.\n",
  "bytes": 11571,
  "sha": "078f2eaf454feedc9c41d94a7a7f1dfc8634ee4e07e632bd5fab90ec37f902e7",
  "repo_slug": "xquik-dev/tweetclaw",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/skl_xquik_dev_tweetclaw_skills_tweetclaw_mas_1c311635/readme"
}