Why Add Twitter Tools to Hermes Agent
Hermes Agent handles planning, memory, tools, and long-running workflows. Hermes Tweet adds focused X and Twitter API access through Xquik. The plugin exposes 102 agent-callable endpoints. Those endpoints cover tweets, profiles, timelines, followers, following, replies, media, monitors, and webhooks. Hermes Tweet separates discovery, reads, and approved actions. This separation reduces guessed routes and unintended writes. Use the plugin for these Hermes Agent Twitter tasks:- Search tweets by keyword, phrase, hashtag, or account.
- Read tweet details, replies, quotes, and engagement counts.
- Inspect profiles, timelines, followers, following, and mentions.
- Export followers, following accounts, or tweet replies.
- Monitor accounts or keywords and deliver webhook events.
- Draft, post, reply, like, repost, follow, or send DMs.
Prerequisites
- Python
3.11or newer - Hermes Agent with plugin support
- Xquik API key
hermes_agent.plugins entry-point group. Enable each third-party plugin before loading it.
Install
For an existing Hermes Agent install, use the plugin installer:~/.hermes/config.yaml. The Hermes home directory is ~/.hermes.
Hermes prompts for XQUIK_API_KEY during an interactive install and stores it
in ~/.hermes/.env. Non-interactive installs skip the prompt. Set the key in
the process environment or ~/.hermes/.env before calling tweet_read.
Install the published PyPI package directly into the Hermes Python environment
when you manage package installation yourself:
pip, this path is also valid:
0.1.12. The plugin name is hermes-tweet, and the Python entry point is hermes-tweet = hermes_tweet.
Configure
Set your Xquik API key before starting Hermes:~/.hermes/.env:
HERMES_TWEET_ENABLE_ACTIONS=false for unattended sessions. Enable actions only for workflows with an explicit approval step:
~/.hermes/.env, run /reload in
an interactive CLI session, or restart gateway and cron sessions before calling
tweet_read.
New agent runs read the updated environment after restart.
Tools
tweet_explore
Search the bundled Xquik endpoint catalog without making an API call. Use it before every live endpoint call.
tweet_read
Call catalog-listed read-only endpoints after
XQUIK_API_KEY is configured.tweet_action
Call write-like or private endpoints only when
HERMES_TWEET_ENABLE_ACTIONS=true.tweet_explore. Discover the method, path, parameters, and response shape before any endpoint call.
Hermes Agent Twitter Search
Start a tweet search with a concrete question. Asktweet_explore for the catalog route before making a live call.
For keyword searches, use GET /api/v1/x/tweets/search. Pass a specific q value and a bounded limit.
Useful queries combine a topic with intent. Examples include product feedback, support complaints, launches, hiring, or competitor mentions.
Return fields needed by the next workflow step. Typical fields include tweet IDs, text, authors, timestamps, metrics, media, and entities.
Preserve next_cursor whenever has_next_page is true. Continue only when the workflow needs another page.
Do not treat every matching tweet as equally relevant. Filter results by the task’s topic, author, language, date, or engagement criteria.
For a tweet search agent, summarize patterns after collecting the selected pages. Keep source tweet IDs beside each conclusion.
Profiles, Followers, Following, and Replies
Hermes Tweet can inspect an account before starting a larger export. Use catalog-listed reads for profiles, timelines, followers, following, and mentions. For small lists, use the matching read endpoint. Follow the returned cursor until the requested result count is complete. For bulk work, use the extraction workflow. Available extraction types includefollower_explorer, following_explorer, and reply_extractor.
Estimate each extraction before creating it. Confirm the target username, tweet ID, result limit, format, and expected scope.
After approval, create the extraction with tweet_action. Poll its status with tweet_read until the job becomes terminal.
Export completed results as CSV, JSON, or XLSX. Retain stable tweet or user IDs for later joins.
A Twitter follower export supports audience analysis and CRM enrichment. A following export reveals accounts that the target follows.
A reply export supports conversation analysis, support triage, and giveaway review. Never infer sentiment from usernames alone.
Monitors and Webhook Delivery
Use an account monitor for new posts from selected profiles. Use a keyword monitor for matching tweets across X. Create monitors only after confirming the target and cadence. Register a webhook only after reviewing its receiver URL. Store the webhook secret outside Hermes transcripts. VerifyX-Xquik-Signature against the exact raw request body.
Persist deliveryId and streamEventId for deduplication. Return 2xx when a duplicate was already accepted.
Monitor events can trigger summaries, alerts, CRM updates, or research queues. Keep each downstream action separately approved.
Approved Twitter Actions
Hermes Tweet keepstweet_action unavailable by default. Enable it only for workflows that can change state.
Before every action, review the method, path, payload, account, and expected effect. Require explicit approval for the exact request.
Supported action areas include tweets, replies, likes, reposts, follows, DMs, profiles, media, communities, and lists.
Use a unique Idempotency-Key for durable write actions. Store the returned action ID and status URL.
Poll while terminal is false. Retry only when safeToRetry is true.
For tweet media, pass public HTTPS image or MP4 URLs in media. For DM media, upload first and pass its mediaId.
Keep full DM bodies out of shared outputs. Return only the fields needed for confirmation.
Workflow Handoffs
Usetweet_explore first, then choose tweet_read for public reads or
tweet_action for approved jobs that create or change state.
Tweet Search Read
Use
tweet_read with GET /api/v1/x/tweets/search, a concrete q, and a
bounded limit to return tweet IDs, text, authors, timestamps, and metrics.Follower Export Action
Use
tweet_action to estimate and create follower_explorer, then use
tweet_read to poll the job and export CSV, JSON, or XLSX results.Monitor Webhook Action
Use
tweet_explore with include_actions true to find monitor and webhook
endpoints, then use tweet_action for POST /api/v1/monitors or
POST /api/v1/monitors/keywords and POST /api/v1/webhooks only after
approval. Store the webhook secret in a secret manager. In receivers,
verify X-Xquik-Signature, store deliveryId and streamEventId, return
2xx for accepted duplicates, and keep endpoint signing values, raw
request body, raw signature, and full headers out of Hermes transcripts and
shared workflow outputs.Media Tweet or DM Action
Use public media URLs in
media for tweet or reply actions. Store the
durable action id, status, billing, result, and statusUrl. Poll
with tweet_read while terminal is false. For DM attachments, upload
media first, pass one returned mediaId in media_ids, then store the DM
action. Keep full DM bodies out of shared outputs and leave
reply_to_message_id unset.Runtime Diagnostics
For scriptable checks, usehermes tools list. Bare hermes tools opens the interactive tool UI and requires a TTY. The list command reports plugin toolsets, so confirm hermes-tweet appears before testing calls.
tweet_explorecan inspect catalog endpoints without an API key.- Without
XQUIK_API_KEY, a non-mutating Hermes probe exposestweet_exploreonly. - After configuration and restart,
tweet_readcan read/api/v1/x/trends. tweet_actionstays hidden or disabled unlessHERMES_TWEET_ENABLE_ACTIONS=true./xstatusand/xtrendsappear in the Hermes plugin command registry.
/xstatus as an interactive slash command. Verify slash commands in an active CLI or gateway session.
Use hermes -z for tool-call probes.
Non-interactive installs cannot prompt for credentials; set XQUIK_API_KEY in the process environment or ~/.hermes/.env.
Slash Commands
/xstatus
Show Xquik account, subscription, and usage status in an active Hermes CLI or gateway session.
/xtrends
Show current X trends from the plugin command registry.
Safety Model
Hermes Tweet reads auth from environment variables and injects it at request time. The model does not receive the API key as a tool argument. The plugin blocks dashboard-only administrative endpoints from the catalog. It also blocks billing, credits, support, API-key, and reauthentication endpoints. Private reads and write-like endpoints usetweet_action. The tool stays hidden unless HERMES_TWEET_ENABLE_ACTIONS=true.
For unattended jobs, keep action tools disabled and use only tweet_explore plus tweet_read.
API Coverage
Hermes Tweet includes 102 agent-callable Xquik endpoints. OpenAPI generates the catalog. The catalog includes 7 MPP-tagged read endpoints at fixed prices.Public Reads
Tweet search, tweet lookup, user lookup, timelines, articles, and trends.
Private Reads
Account status, connected accounts, usage, and events.
Monitoring
Account monitors, keyword monitors, events, and webhooks.
Workflows
Extractions, giveaway draws, exports, compose, drafts, and styles.
Actions
Tweet, reply, like, retweet, follow, DM, profile, media, and communities.
Local Development
For local plugin development, regenerate the bundled catalog from the Xquik OpenAPI contract:hermes-tweet repository after the Xquik OpenAPI file changes.
Verify
After installing, enabling, and settingXQUIK_API_KEY, run:
tweet_action.
Troubleshooting
Tools Missing
Run
hermes plugins enable hermes-tweet, then confirm hermes-tweet appears in hermes tools list.Auth Fails
Confirm
XQUIK_API_KEY is exported in the same environment that starts Hermes, or stored in ~/.hermes/.env.Env Reload
Run
/reload in the interactive CLI, or restart gateway and cron sessions.Action Tool Hidden
Set
HERMES_TWEET_ENABLE_ACTIONS=true only for approved action workflows.Endpoint Missing
Regenerate the catalog from the current Xquik OpenAPI file in local development.
Risky Writes
Keep
HERMES_TWEET_ENABLE_ACTIONS=false and use read tools only.Hermes Agent Twitter FAQ
What Is Hermes Agent?
Hermes Agent is an open-source agent runtime from Nous Research. It supports tools, skills, plugins, memory, scheduled work, and gateway sessions. Hermes Tweet extends that runtime with Xquik’s Twitter API tools. It does not replace Hermes Agent itself.How Do I Install Hermes Tweet?
Install the GitHub package withhermes plugins install Xquik-dev/hermes-tweet --enable. This command installs and enables the plugin.
You can also install hermes-tweet from PyPI. Install it inside Hermes’ Python environment, then enable the plugin.
Restart Hermes after changing environment variables. Run hermes tools list before testing a live Twitter workflow.
Is Hermes Tweet a Hermes Agent Skill or Plugin?
Hermes Tweet is an executable Hermes Agent plugin. It registerstweet_explore, tweet_read, and tweet_action.
The package also bundles a Hermes skill. That skill teaches endpoint discovery, read selection, approvals, and secret handling.
A skill supplies operating guidance. The plugin supplies the Python tools that make API calls.
How Does Hermes Agent Search Twitter?
Hermes first callstweet_explore with the search goal. The catalog returns a matching method, route, parameters, and response shape.
Hermes then calls tweet_read for GET /api/v1/x/tweets/search. The q parameter contains the keyword, phrase, hashtag, or account query.
The result can include tweets, authors, timestamps, engagement metrics, media, and pagination fields. The exact payload follows the Xquik API response.
Can Hermes Agent Export Twitter Followers?
Yes. Usetweet_explore to find follower_explorer, then estimate the requested result count.
Create the extraction only after approval. Poll the extraction and export the completed followers as CSV, JSON, or XLSX.
The same workflow supports following_explorer. Choose it when the task needs accounts followed by a profile.
Can Hermes Agent Export Tweet Replies?
Yes. Usereply_extractor for a bounded reply export. Confirm the target tweet ID and result limit before creation.
Store tweet IDs, author IDs, timestamps, reply text, and available metrics. Preserve cursors or job status for reproducible collection.
Use the exported replies for support triage, conversation research, or giveaway review. Apply project-specific privacy and retention rules.
Can Hermes Agent Monitor X Accounts?
Yes. Account monitors watch selected profiles. Keyword monitors watch matching tweets. Send monitor events to a verified webhook receiver. Deduplicate events before triggering alerts or downstream actions.Does Hermes Tweet Need X Developer Credentials?
No X developer credentials are required. Hermes Tweet authenticates with an Xquik API key. KeepXQUIK_API_KEY in the Hermes runtime environment. Never pass that key through a model-visible tool argument.
Hermes Agent vs OpenClaw: Which Plugin Should I Use?
Choose Hermes Tweet for Hermes Agent. Choose TweetClaw for OpenClaw. Hermes Tweet is a Python entry-point plugin. TweetClaw is an npm plugin for OpenClaw. Both use the Xquik API contract. Both start with catalog discovery before live Twitter calls. Do not install both for one runtime. Pick the plugin that matches the agent host.Is Hermes Tweet an MCP Server?
No. Hermes Tweet runs inside Hermes Agent and registers native Python tools. Use the Xquik MCP server when your client supports MCP. Use Hermes Tweet for native Hermes plugin loading.Why Are Hermes Tweet Tools Missing?
Confirm installation withhermes plugins. Enable the plugin with hermes plugins enable hermes-tweet.
Then run hermes tools list. Confirm the hermes-tweet toolset appears.
Restart Hermes after configuration changes. Check the startup output for a plugin registration failure.
An open Hermes Agent issue reports some import-time failures can remain cached. Restart after fixing the registration error.