Hermes Tweet
Overview
Hermes Tweet solves X research and automation tasks without direct HTTP fallbacks
or guessed endpoints. It discovers catalog-listed Xquik routes, performs
authenticated reads, and keeps write-like or private operations behind an
explicit environment gate and user approval.
Use the skill for read-first workflows. Enable action tooling only for a named
operation whose endpoint, payload, account, and side effects the user approves.
When to Use
Use this skill for Hermes Agent sessions that need X/Twitter data or controlled
X actions through the Hermes Tweet plugin.
Use this skill especially for social listening, launch monitoring, support
triage, creator research, brand research, giveaway audits, community audits,
and controlled publishing workflows.
Use tweet_explore first when the user asks for a capability, endpoint, route,
or Xquik API surface. Use tweet_read only after a read-only endpoint is known.
Use tweet_action only after the user requests a write, private read, monitor,
webhook, extraction job, giveaway draw, or media operation that requires action
permissions.
Prerequisites
- Install and enable the plugin with
hermes plugins install Xquik-dev/hermes-tweet --enable.
- Configure
XQUIK_API_KEY on the Hermes runtime host for authenticated reads.
tweet_explore remains available without the key or network access.
- Leave
HERMES_TWEET_ENABLE_ACTIONS unset or false unless the workflow needs
an approved write-like or private operation.
- For project-local plugins, set
HERMES_ENABLE_PROJECT_PLUGINS=true only in a
trusted repository.
- Restart a gateway after environment changes and start a new session. Active
CLI sessions can use
/reload.
Permissions and Capabilities
- Use
tweet_explore, tweet_read, and tweet_action only through the enabled
Hermes Tweet toolset.
- Network access is limited to catalog-listed Xquik API routes reached by those
tools. Do not create direct HTTP fallbacks.
- Shell access is not part of normal operation. Use Hermes CLI commands only for
the install and registry checks listed in Testing.
- Local file access is not part of normal operation. Do not write reports,
credentials, logs, screenshots, or cached API payloads unless the user asks
for an explicit export workflow.
- Environment access is limited to configuration presence checks for
XQUIK_API_KEY, HERMES_TWEET_ENABLE_ACTIONS, and
HERMES_ENABLE_PROJECT_PLUGINS. Never request or echo their values.
- MCP access is not required.
Instructions
- Confirm the plugin is enabled with
hermes plugins list and confirm tool
registration with hermes tools list.
- Use
tweet_explore to find the catalog endpoint and method.
- Use
tweet_read for public read-only endpoints after the API key is
configured.
- Before
tweet_action, state the exact endpoint, payload, account, reason,
and expected side effects, then get explicit approval.
- Verify the tool response. Report policy, authentication, validation, or
account errors without retrying through alternate routes.
Decision Rules
- IF the task is endpoint discovery, THEN call
tweet_explore with a short
query.
- IF the endpoint method is
GET and the catalog does not mark it as an
action, THEN call tweet_read.
- IF the endpoint method is not
GET, or the route touches private account
state, THEN call tweet_action only when actions are enabled and the user has
approved the operation.
- IF
tweet_action is unavailable or disabled, THEN explain that action tools
are intentionally gated by HERMES_TWEET_ENABLE_ACTIONS=true.
- IF
XQUIK_API_KEY is missing, THEN ask the user to set it in the Hermes
runtime environment without requesting the key value in chat.
- IF Hermes lists the plugin as
not enabled, THEN tell the user to run
hermes plugins enable hermes-tweet or reinstall with --enable.
- IF the plugin is installed as a project-local
.hermes/plugins/ copy, THEN
remind the user that Hermes requires HERMES_ENABLE_PROJECT_PLUGINS=true for
trusted repositories.
- IF the task is unattended, scheduled, gateway-driven, or cron-driven, THEN
prefer
tweet_read and keep tweet_action disabled unless the workflow has a
clear approval step.
- IF the user is in Hermes Desktop with a remote gateway profile, THEN remind
them that Hermes Tweet must be installed, enabled, and configured on the
remote Hermes host where plugin tools execute.
- IF the user uses the Hermes dashboard for gateway administration or
credentials, THEN keep Hermes Tweet secrets in the runtime environment and do
not ask for key values in chat.
Safety
- Never ask for or reveal API keys, signing keys, passwords, cookies, or TOTP secrets.
- Never pass credentials in tool arguments.
- Use only catalog-listed
/api/v1/... endpoints.
- Copied endpoint URLs are accepted only when they resolve to catalog-listed paths.
- Do not use account connection, re-authentication, API key, billing, credit top-up, or support-ticket endpoints.
- For posting, deleting, following, DMs, profile changes, monitors, webhooks, extraction jobs, and draws, summarize the action before calling
tweet_action.
Known Risks and Mitigations
- Risk: A broad X/Twitter request may map to a write-capable route.
Mitigation: Start with
tweet_explore, prefer tweet_read, and require a
user-approved endpoint plus payload before tweet_action.
- Risk: Secrets may be pasted into chat or examples.
Mitigation: Ask only for environment configuration, never for key values, and
never put credentials in tool arguments.
- Risk: Endpoint guessing may bypass catalog review.
Mitigation: Accept only catalog-listed
/api/v1/... paths and reject direct
HTTP fallbacks.
- Risk: Automated X/Twitter actions can affect real accounts.
Mitigation: Keep
HERMES_TWEET_ENABLE_ACTIONS=false by default and summarize
side effects before any account-changing call.
Output
- Output type: endpoint selection, API-result summaries, action previews, and
troubleshooting guidance.
- Output format: concise Markdown for humans and JSON-like tool payloads for
Hermes Tweet calls.
- Side effects:
tweet_explore has no external side effects, tweet_read
performs authenticated reads, and tweet_action may change account or
workflow state only after explicit approval.
Error Handling
Use the narrowest recovery step that preserves the read-first and action-gated
contract:
- Missing tool: confirm the plugin is enabled, then run
hermes tools list.
- Missing API key: configure
XQUIK_API_KEY on the runtime host without pasting
its value into chat, then run /reload in an active CLI session or run
hermes gateway restart and start a new gateway session.
- Unknown endpoint: call
tweet_explore again. Never guess paths or create a
direct HTTP fallback.
- Disabled action: keep the action blocked unless the user requested it and
HERMES_TWEET_ENABLE_ACTIONS=true is intentionally configured.
- Policy, authentication, validation, or account error: return the sanitized
failure and corrective step. Do not retry through another route.
- Missing slash command: verify it in an active Hermes session or plugin
registry test rather than treating prompt text as registration proof.
- Secret in input: stop and ask the user to rotate it before continuing.
Examples
Example: Search tweets
{"query":"tweet search","method":"GET"}
Then call:
{"path":"/api/v1/x/tweets/search","query":{"q":"AI agents","limit":25}}
Example: Inspect trends
Run /xtrends in an active Hermes session. Use tweet_explore when the task
needs a catalog endpoint or structured response instead of the slash command.
Example: Post a tweet
{"query":"post tweet","include_actions":true}
Then call tweet_action with:
{"path":"/api/v1/x/tweets","method":"POST","body":{"account":"@example","text":"Hello from Hermes Tweet"},"reason":"Post the user-approved tweet."}
Testing
After installing or upgrading the plugin in Hermes Agent:
- Run
hermes plugins enable hermes-tweet unless the install used --enable.
- Run
hermes plugins list and confirm the plugin is enabled.
- Run
hermes tools list and confirm the hermes-tweet toolset is enabled.
- Confirm
tweet_explore is available without XQUIK_API_KEY.
- Confirm
tweet_read appears only when XQUIK_API_KEY is configured.
- Confirm
tweet_action stays hidden or disabled unless HERMES_TWEET_ENABLE_ACTIONS=true.
Useful CLI checks:
hermes plugins enable hermes-tweet
hermes tools list
Release Trust Gate
Before presenting this skill as NVIDIA-verified or ready for broad enterprise
deployment:
- Run SkillSpector against the complete skill directory and resolve critical or
high findings.
- Complete
skill-card.md with owner, license, use case, deployment
geography, risks, references, output shape, and release version.
- Include Tier-3 eval data and
BENCHMARK.md for the reviewed release.
- Sign the exact reviewed skill directory and publish
skill.oms.sig.
- Verify the published directory with the expected certificate chain.
Do not claim NVIDIA verification when those release artifacts are absent.
Resources
Source: jeremylongshore/claude-code-plugins-plus-skills → skills/.curated/hermes-tweet/SKILL.md
Also appears in: jeremylongshore/claude-code-plugins-plus-skills/plugins/community/hermes-tweet/skills/hermes-tweet/SKILL.md, jeremylongshore/claude-code-plugins-plus-skills/plugins/community/hermes-tweet/hermes_tweet/skills/hermes-tweet/SKILL.md, hashgraph-online/awesome-codex-plugins/plugins/Xquik-dev/hermes-tweet/skills/hermes-tweet/SKILL.md
1---2name: hermes-tweet-33description: >- Uses Xquik from Hermes Agent for X research, monitoring, and approval-gated actions. Use when the user requests X data or an approved X action. Trigger with "search X", "monitor X", "post tweet", or "X trends".4---5
6
7# Hermes Tweet
8
9## Overview
10
11Hermes Tweet solves X research and automation tasks without direct HTTP fallbacks
12or guessed endpoints. It discovers catalog-listed Xquik routes, performs
13authenticated reads, and keeps write-like or private operations behind an
14explicit environment gate and user approval.
15
16Use the skill for read-first workflows. Enable action tooling only for a named
17operation whose endpoint, payload, account, and side effects the user approves.
18
19## When to Use
20
21Use this skill for Hermes Agent sessions that need X/Twitter data or controlled
22X actions through the Hermes Tweet plugin.
23
24Use this skill especially for social listening, launch monitoring, support
25triage, creator research, brand research, giveaway audits, community audits,
26and controlled publishing workflows.
27
28Use `tweet_explore` first when the user asks for a capability, endpoint, route,
29or Xquik API surface. Use `tweet_read` only after a read-only endpoint is known.
30Use `tweet_action` only after the user requests a write, private read, monitor,
31webhook, extraction job, giveaway draw, or media operation that requires action
32permissions.
33
34## Prerequisites
35
36- Install and enable the plugin with
37 `hermes plugins install Xquik-dev/hermes-tweet --enable`.
38- Configure `XQUIK_API_KEY` on the Hermes runtime host for authenticated reads.
39 `tweet_explore` remains available without the key or network access.
40- Leave `HERMES_TWEET_ENABLE_ACTIONS` unset or false unless the workflow needs
41 an approved write-like or private operation.
42- For project-local plugins, set `HERMES_ENABLE_PROJECT_PLUGINS=true` only in a
43 trusted repository.
44- Restart a gateway after environment changes and start a new session. Active
45 CLI sessions can use `/reload`.
46
47## Permissions and Capabilities
48
49- Use `tweet_explore`, `tweet_read`, and `tweet_action` only through the enabled
50 Hermes Tweet toolset.
51- Network access is limited to catalog-listed Xquik API routes reached by those
52 tools. Do not create direct HTTP fallbacks.
53- Shell access is not part of normal operation. Use Hermes CLI commands only for
54 the install and registry checks listed in Testing.
55- Local file access is not part of normal operation. Do not write reports,
56 credentials, logs, screenshots, or cached API payloads unless the user asks
57 for an explicit export workflow.
58- Environment access is limited to configuration presence checks for
59 `XQUIK_API_KEY`, `HERMES_TWEET_ENABLE_ACTIONS`, and
60 `HERMES_ENABLE_PROJECT_PLUGINS`. Never request or echo their values.
61- MCP access is not required.
62
63## Instructions
64
651. Confirm the plugin is enabled with `hermes plugins list` and confirm tool
66 registration with `hermes tools list`.
672. Use `tweet_explore` to find the catalog endpoint and method.
683. Use `tweet_read` for public read-only endpoints after the API key is
69 configured.
704. Before `tweet_action`, state the exact endpoint, payload, account, reason,
71 and expected side effects, then get explicit approval.
725. Verify the tool response. Report policy, authentication, validation, or
73 account errors without retrying through alternate routes.
74
75## Decision Rules
76
77- IF the task is endpoint discovery, THEN call `tweet_explore` with a short
78 query.
79- IF the endpoint method is `GET` and the catalog does not mark it as an
80 action, THEN call `tweet_read`.
81- IF the endpoint method is not `GET`, or the route touches private account
82 state, THEN call `tweet_action` only when actions are enabled and the user has
83 approved the operation.
84- IF `tweet_action` is unavailable or disabled, THEN explain that action tools
85 are intentionally gated by `HERMES_TWEET_ENABLE_ACTIONS=true`.
86- IF `XQUIK_API_KEY` is missing, THEN ask the user to set it in the Hermes
87 runtime environment without requesting the key value in chat.
88- IF Hermes lists the plugin as `not enabled`, THEN tell the user to run
89 `hermes plugins enable hermes-tweet` or reinstall with `--enable`.
90- IF the plugin is installed as a project-local `.hermes/plugins/` copy, THEN
91 remind the user that Hermes requires `HERMES_ENABLE_PROJECT_PLUGINS=true` for
92 trusted repositories.
93- IF the task is unattended, scheduled, gateway-driven, or cron-driven, THEN
94 prefer `tweet_read` and keep `tweet_action` disabled unless the workflow has a
95 clear approval step.
96- IF the user is in Hermes Desktop with a remote gateway profile, THEN remind
97 them that Hermes Tweet must be installed, enabled, and configured on the
98 remote Hermes host where plugin tools execute.
99- IF the user uses the Hermes dashboard for gateway administration or
100 credentials, THEN keep Hermes Tweet secrets in the runtime environment and do
101 not ask for key values in chat.
102
103## Safety
104
105- Never ask for or reveal API keys, signing keys, passwords, cookies, or TOTP secrets.
106- Never pass credentials in tool arguments.
107- Use only catalog-listed `/api/v1/...` endpoints.
108- Copied endpoint URLs are accepted only when they resolve to catalog-listed paths.
109- Do not use account connection, re-authentication, API key, billing, credit top-up, or support-ticket endpoints.
110- For posting, deleting, following, DMs, profile changes, monitors, webhooks, extraction jobs, and draws, summarize the action before calling `tweet_action`.
111
112## Known Risks and Mitigations
113
114- Risk: A broad X/Twitter request may map to a write-capable route.
115 Mitigation: Start with `tweet_explore`, prefer `tweet_read`, and require a
116 user-approved endpoint plus payload before `tweet_action`.
117- Risk: Secrets may be pasted into chat or examples.
118 Mitigation: Ask only for environment configuration, never for key values, and
119 never put credentials in tool arguments.
120- Risk: Endpoint guessing may bypass catalog review.
121 Mitigation: Accept only catalog-listed `/api/v1/...` paths and reject direct
122 HTTP fallbacks.
123- Risk: Automated X/Twitter actions can affect real accounts.
124 Mitigation: Keep `HERMES_TWEET_ENABLE_ACTIONS=false` by default and summarize
125 side effects before any account-changing call.
126
127## Output
128
129- Output type: endpoint selection, API-result summaries, action previews, and
130 troubleshooting guidance.
131- Output format: concise Markdown for humans and JSON-like tool payloads for
132 Hermes Tweet calls.
133- Side effects: `tweet_explore` has no external side effects, `tweet_read`
134 performs authenticated reads, and `tweet_action` may change account or
135 workflow state only after explicit approval.
136
137## Error Handling
138
139Use the narrowest recovery step that preserves the read-first and action-gated
140contract:
141
142- Missing tool: confirm the plugin is enabled, then run `hermes tools list`.
143- Missing API key: configure `XQUIK_API_KEY` on the runtime host without pasting
144 its value into chat, then run `/reload` in an active CLI session or run
145 `hermes gateway restart` and start a new gateway session.
146- Unknown endpoint: call `tweet_explore` again. Never guess paths or create a
147 direct HTTP fallback.
148- Disabled action: keep the action blocked unless the user requested it and
149 `HERMES_TWEET_ENABLE_ACTIONS=true` is intentionally configured.
150- Policy, authentication, validation, or account error: return the sanitized
151 failure and corrective step. Do not retry through another route.
152- Missing slash command: verify it in an active Hermes session or plugin
153 registry test rather than treating prompt text as registration proof.
154- Secret in input: stop and ask the user to rotate it before continuing.
155
156## Examples
157
158**Example: Search tweets**
159
160```json
161{"query":"tweet search","method":"GET"}
162```
163
164Then call:
165
166```json
167{"path":"/api/v1/x/tweets/search","query":{"q":"AI agents","limit":25}}
168```
169
170**Example: Inspect trends**
171
172Run `/xtrends` in an active Hermes session. Use `tweet_explore` when the task
173needs a catalog endpoint or structured response instead of the slash command.
174
175**Example: Post a tweet**
176
177```json
178{"query":"post tweet","include_actions":true}
179```
180
181Then call `tweet_action` with:
182
183```json
184{"path":"/api/v1/x/tweets","method":"POST","body":{"account":"@example","text":"Hello from Hermes Tweet"},"reason":"Post the user-approved tweet."}
185```
186
187## Testing
188
189After installing or upgrading the plugin in Hermes Agent:
190
1911. Run `hermes plugins enable hermes-tweet` unless the install used `--enable`.
1922. Run `hermes plugins list` and confirm the plugin is `enabled`.
1933. Run `hermes tools list` and confirm the `hermes-tweet` toolset is enabled.
1944. Confirm `tweet_explore` is available without `XQUIK_API_KEY`.
1955. Confirm `tweet_read` appears only when `XQUIK_API_KEY` is configured.
1966. Confirm `tweet_action` stays hidden or disabled unless `HERMES_TWEET_ENABLE_ACTIONS=true`.
197
198Useful CLI checks:
199
200```bash
201hermes plugins enable hermes-tweet
202hermes tools list
203```
204
205## Release Trust Gate
206
207Before presenting this skill as NVIDIA-verified or ready for broad enterprise
208deployment:
209
2101. Run SkillSpector against the complete skill directory and resolve critical or
211 high findings.
2122. Complete `skill-card.md` with owner, license, use case, deployment
213 geography, risks, references, output shape, and release version.
2143. Include Tier-3 eval data and `BENCHMARK.md` for the reviewed release.
2154. Sign the exact reviewed skill directory and publish `skill.oms.sig`.
2165. Verify the published directory with the expected certificate chain.
217
218Do not claim NVIDIA verification when those release artifacts are absent.
219
220## Resources
221
222- [Endpoint and approval contract](references/endpoint-contract.md)
223- [Skill card](skill-card.md)
224- [Hermes Tweet repository](https://github.com/Xquik-dev/hermes-tweet)
225- [Hermes Agent plugin guide](https://github.com/NousResearch/hermes-agent/blob/main/website/docs/user-guide/features/plugins.md)
226- [Xquik Hermes Tweet guide](https://docs.xquik.com/guides/hermes-tweet)
227
228---
229
230**Source:** [`jeremylongshore/claude-code-plugins-plus-skills`](https://github.com/jeremylongshore/claude-code-plugins-plus-skills) → `skills/.curated/hermes-tweet/SKILL.md`
231
232**Also appears in:** `jeremylongshore/claude-code-plugins-plus-skills/plugins/community/hermes-tweet/skills/hermes-tweet/SKILL.md`, `jeremylongshore/claude-code-plugins-plus-skills/plugins/community/hermes-tweet/hermes_tweet/skills/hermes-tweet/SKILL.md`, `hashgraph-online/awesome-codex-plugins/plugins/Xquik-dev/hermes-tweet/skills/hermes-tweet/SKILL.md`