Hermes Agent Setup
Set up push notifications for Hermes Agent via native plugin or MCP
Complete the Quickstart first to create your account and get your API key.
Two integration options: a native plugin that registers Pushary tools directly in Hermes, or an MCP server connection. The native plugin is recommended because it includes automatic error notifications and session-end alerts.
Native plugin (recommended)
pip install hermes-plugin-pushary
hermes plugins enable pusharySet your API key in your shell profile:
export PUSHARY_API_KEY="pk_abc123.sk_xyz789"What you get
The plugin registers 4 native Hermes tools:
| Tool | Description |
|---|---|
pushary_notify | Send a push with optional rich context |
pushary_ask | Ask a question: yes/no, multiple choice, or free text |
pushary_wait | Poll for your response |
pushary_cancel | Cancel a pending question |
Plus two automatic hooks:
- post_tool_call: sends a push notification when any tool returns an error (up to 3 per session)
- on_session_end: notifies you when a Hermes session ends (opt-in)
Configuration
Set these environment variables to customize behavior:
| Variable | Description |
|---|---|
PUSHARY_API_KEY | Your API key (required) |
PUSHARY_AGENT_NAME | Label shown in notifications (e.g., "Hermes - daily-briefing") |
PUSHARY_AUTO_NOTIFY_SESSION_END | Set to 1 to get notified when sessions end |
When to use Pushary vs Hermes platforms
Hermes supports 21+ messaging platforms (Telegram, Discord, Slack, etc.). Use Pushary when:
- The user has no active chat session
- You need to reach the user's phone lock screen for a quick decision
- A background task or cron job finishes
- Permission escalation for dangerous commands
Use the active Hermes platform when:
- The user is currently in a Telegram/Discord/Slack conversation
- The question is part of an ongoing dialog
MCP server (alternative)
If you prefer MCP over the native plugin:
Add to config.yaml
mcp:
servers:
pushary:
url: https://pushary.com/api/mcp/sse
headers:
Authorization: "Bearer ${PUSHARY_API_KEY}"Install the skill
hermes skills tap add Pushary/pushary-skill
hermes skills install pusharyThe MCP approach gives you the same tools (send_notification, ask_user, wait_for_answer, cancel_question) but without automatic error notifications or session-end hooks.
Permission gating
Hermes does not have a pre-tool-call hook that can block execution, so permission gating works differently than Claude Code or Codex.
The Pushary skill includes a mandatory permission gating rule that instructs Hermes to call pushary_ask before executing dangerous operations:
- File deletion
- Database mutations
- Deployment commands
- Git history rewrites
- System administration
Hermes follows this instruction and waits for your approval via push notification before proceeding. If you don't respond after 3 attempts, the operation is skipped.
This is a prompt-level constraint, not an enforced hook. Hermes follows it reliably, but it is not physically blocked from executing without approval the way Claude Code is.
Skill tap
Register the Pushary skill repository so Hermes can discover and install skills from it:
hermes skills tap add Pushary/pushary-skillThis makes both the general Pushary skill and the Hermes-specific skill available:
hermes skills install pusharyThe skill teaches Hermes when to send push notifications proactively and how to choose between Pushary and the active chat platform.