Skip to content
Back to skills

Hermes A2a Setup

ASecurity

Install and configure hermes-a2a plugin for agent-to-agent communication. Based on Google's A2A protocol. When user says "a2a"、"agent对话"、"agent通信"、 "给agent发消息"、"跟别的agent说话"、"agent间通信"时加载。

  • 9 stars
  • 0 votes
  • 2 copies
  • 9 views
  • Added September 9, 2026
securitypythongogitapibackendsecurity

Works with

  • cli
  • api

Security analysis

A100/100

Scanned September 9, 2026

npx -y skills add Undermybelt/hermes-skills --skill hermes-a2a-setup --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Hermes A2a Setup?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Hermes A2a Setup
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/undermybelt-hermes-a2a-setup/badge)](https://www.skillsdirectory.com/skills/undermybelt-hermes-a2a-setup)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: hermes-a2a-setup
description: >
  Install and configure hermes-a2a plugin for agent-to-agent communication.
  Based on Google's A2A protocol. When user says "a2a"、"agent对话"、"agent通信"、
  "给agent发消息"、"跟别的agent说话"、"agent间通信"时加载。
tags:
  - a2a
  - agent-to-agent
  - plugin
  - hermes
version: 1
---

## hermes-a2a Plugin Setup

Source repo: hermes-a2a (iamagenius00 on GitHub)

Hermes plugin for peer-to-peer agent communication via Google's A2A protocol.
Zero external dependencies, pure Python stdlib.

### Prerequisites

- Hermes Agent v2026.4.23+ (plugin API with register_command)
- CLI mode only (gateway does NOT load plugins)

### Install Steps

1. Clone repo and run install.sh — copies 7 files to plugins directory
2. CRITICAL: Run `hermes plugins enable a2a` — plugins are opt-in
3. Set A2A_ENABLED=true and A2A_PORT=8081 in environment
4. Restart CLI session (plugin loads at session start)

### Pitfall: Plugin Must Be Explicitly Enabled

The plugin system requires explicit enablement. After install, run:

```
hermes plugins enable a2a
```

Without this, the plugin is discovered but NOT loaded.
User plugins are opt-in — only bundled backends auto-load.

### Pitfall: Gateway Does NOT Load Plugins

Only CLI mode supports A2A. Gateway (Telegram/Discord/Feishu) won't start the A2A server.
Plugin hooks only fire in CLI conversation loop.

### Tools Exposed

| Tool | Description |
|------|-------------|
| a2a_discover | Check remote agent's Agent Card |
| a2a_call | Send message to remote agent |
| a2a_list | List configured remote agents |

### Configuring Remote Agents

Add entries under a2a.agents in config yaml:

```yaml
a2a:
  agents:
    - name: "friend"
      url: "https://friend-a2a-endpoint.example.com"
      description: "My friend's agent"
      auth_token: "their-bearer-token"
```

### Security

- Bearer token auth (localhost-only without token)
- 20 req/min rate limit per IP
- 9 prompt injection patterns filtered
- Outbound secrets redacted
- Audit log at a2a_audit.jsonl

### Architecture

Remote Agent sends A2A JSON-RPC to localhost:8081
  → task_queue.enqueue()
  → webhook trigger fires agent turn
  → pre_llm_call hook injects message into current session
  → agent replies with full context
  → post_llm_call captures response
  → response returned synchronously (120s timeout)
  → exchange persisted to a2a_conversations/

### Files

| File | Purpose |
|------|---------|
| __init__.py | Entry point, registers hooks/tools/server |
| server.py | A2A HTTP server + webhook + task queue |
| tools.py | a2a_discover, a2a_call, a2a_list |
| security.py | Injection filtering, redaction, rate limit |
| persistence.py | Saves conversations to disk |
| schemas.py | Tool schemas |
| plugin.yaml | Plugin manifest |

### Routing Keywords (in skill-router.md)

A2A agent 对话、agent 间通信、给别的 agent 发消息 → A2A 插件

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.