s-hiraoku/synapse-a2a

No description

0 stars0 forksUpdated Jan 25, 2026
npx skills add s-hiraoku/synapse-a2a

README

Synapse A2A

🌐 Language: English | ę—„ęœ¬čŖž

Enable agents to collaborate on tasks without changing their behavior

Python 3.10+ License: MIT Tests Ask DeepWiki

A framework that enables inter-agent collaboration via the Google A2A Protocol while keeping CLI agents (Claude Code, Codex, Gemini, OpenCode, GitHub Copilot CLI) exactly as they are

Project Goals

ā”Œā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”
│  āœ… Non-Invasive: Don't change agent behavior                   │
│  āœ… Collaborative: Enable agents to work together               │
│  āœ… Transparent: Maintain existing workflows                    │
ā””ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”€ā”˜

Synapse A2A transparently wraps each agent's input/output without modifying the agent itself. This means:

  • Leverage each agent's strengths: Users can freely assign roles and specializations
  • Zero learning curve: Continue using existing workflows
  • Future-proof: Resistant to agent updates

See Project Philosophy for details.

flowchart LR
    subgraph Terminal1["Terminal 1"]
        subgraph Agent1["synapse claude :8100"]
            Server1["A2A Server"]
            PTY1["PTY + Claude CLI"]
        end
    end
    subgraph Terminal2["Terminal 2"]
        subgraph Agent2["synapse codex :8120"]
            Server2["A2A Server"]
            PTY2["PTY + Codex CLI"]
        end
    end
    subgraph External["External"]
        ExtAgent["Google A2A Agent"]
    end

    Server1 <-->|"POST /tasks/send"| Server2
    Server1 <-->|"A2A Protocol"| ExtAgent
    Server2 <-->|"A2A Protocol"| ExtAgent

Table of Contents


Features

CategoryFeature
A2A CompliantAll communication uses Message/Part + Task format, Agent Card discovery
CLI IntegrationTurn existing CLI tools into A2A agents without modification
@Agent SyntaxSend messages directly with @claude, @codex-8120
Sender IdentificationAuto-identify sender via metadata.sender + PID matching
Priority InterruptPriority 5 sends SIGINT before message (emergency stop)
Multi-InstanceRun multiple agents of the same type (automatic port assignment)
External IntegrationCommunicate with other Google A2A agents
Task DelegationAuto-forward tasks to other agents via natural language rules
File SafetyPrevent multi-agent conflicts with file locking and change tracking (visible in synapse list)
Agent MonitorReal-time status (READY/WAITING/PROCESSING/DONE), terminal jump with Enter/j key

Prerequisites


Quick Start

1. Install Synapse A2A

# Install from PyPI (recommended)
pip install synapse-a2a

# With gRPC support
pip install "synapse-a2a[grpc]"

For developers (editing this repository):

# Install with uv
uv sync

# Or pip (editable)
pip install -e .

2. Install Skills (Recommended)

Installing skills is strongly recommended to get the most out of Synapse A2A.

Skills help Claude automatically understand Synapse A2A features: @agent messaging, task delegation, File Safety, and more.

# Install via skills.sh (https://skills.sh/)
npx skills add s-hiraoku/synapse-a2a

See Skills for details.

3. Start Agents

# Terminal 1: Claude
synapse claude

# Terminal 2: Codex
synapse codex

# Terminal 3:

...
Read full README

Publisher

s-hiraokus-hiraoku

Statistics

Stars0
Forks0
Open Issues12
CreatedDec 26, 2025