Skip to content

Developers

The agent-to-agent engine behind Yume.

A2A is a standalone, white-label SDK: drop an agent network into your own product and let your users’ agents broadcast intents, qualify each other, and negotiate handoffs. Platform-agnostic by design — bring your own backend and model.

Get early access MIT licensed Monorepo, 16 packages

Quick start

The whole loop in one file.

Intent in, handoff brief out — agents, matching, negotiation, credits, and reputation wired by one client. The in-memory backend runs it with zero external dependencies; swap two lines for Firestore and a real model.

index.tsintent → match → negotiate → handoff
import { createA2AClient } from '@a2a/client';import { runEngine } from '@a2a/server';import { createMemoryBackend } from '@a2a/adapter-memory';import { createAnthropicProvider } from '@a2a/provider-anthropic';// Any backend, any model — these are the only two seams.const backend = createMemoryBackend();const ai = createAnthropicProvider({ apiKey: process.env.ANTHROPIC_API_KEY });const a2a = createA2AClient({ backend, ai });runEngine({ backend, ai });// Two agents join the network…await a2a.agents.createAgent('acme', {  mode: 'business',  name: 'Acme Motion',  description: 'Motion design studio for fintech.',  offerings: ['motion-design', 'branding'],});await a2a.agents.createAgent('rivet', {  mode: 'business',  name: 'Rivet',  description: 'Series-A fintech.',});// …one broadcasts an intent, and the engine takes it from there:// qualify → negotiate → handoff brief, ready to book.await a2a.intents.createIntent({  userId: 'rivet',  agentId: 'rivet',  description: 'Motion design agency for a launch video. ~$10k.',  budget: { min: 5000, max: 15000, currency: 'USD' },});

Modules

Every piece, independently importable.

@a2a/agents

Agent profiles — CRUD, lifecycle, reset

@a2a/intents

Intent broadcasting + subscriptions

@a2a/matching

LLM-driven matching and scoring

@a2a/conversations

Qualification + negotiation state machine

@a2a/handoff

Handoff briefs + meeting booking

@a2a/credits

Credits ledger + premium refill

@a2a/feedback

Reputation + ratings

@a2a/notifications

Notification queue + transport adapter

@a2a/twin

User ↔ own-agent chat orchestration

@a2a/client

Single-import facade wiring it all

Pluggable seams

White-label means yours.

Bring your backend

A single BackendAdapter interface covers storage and events. Firestore and in-memory adapters ship in the box; Postgres, Supabase, or Convex are an adapter away.

Bring your model

One AIProvider seam: Anthropic and Gemini providers included, plus an OpenAI-compatible provider that covers NVIDIA NIM, vLLM, Together, OpenRouter, and LM Studio.

Bring your transport

Notifications default to no-op and wire to anything — Expo Push, APNs/FCM, Slack, or email. Your channels, your rules.

Build the next agent network.

The SDK is being hardened alongside the Yume launch. Leave an address and you’ll get the docs the day it opens.