Izabrani projekti
a2abridge
Otvoren A2A 1.0 mesh za AI coding agente — Claude Code, Codex CLI, Cursor, Cline, Continue, Gemini CLI i Antigravity CLI — na zvaničnom a2a-go SDK-u (v4.0.1).
- Go
- A2A 1.0
- a2a-go
- JSON-RPC
- HTTP+JSON
- SSE
- MCP
Problem
U istom repozitorijumu istovremeno rade više coding agenata — Claude Code, Codex CLI, Cursor, Cline, Continue, Gemini CLI, Antigravity CLI. Žive u istom kodu, ali ne pričaju. Svaka breaking promena ugovora otkriva se ponovo, sporo, od svakog agenta.
a2abridge pretvara svakog agenta u standardni A2A 1.0 peer, da bi proaktivno slali poruke jedni drugima.
Arhitektura
- Lokalni directory servis na
127.0.0.1:7777, instaliran kao korisnički sistemski servis (launchd, systemd —user ili Windows Service). - Bridge po agentu: istovremeno MCP server za IDE i A2A peer sa sopstvenom Agent Card.
- Svaki agent ima self-label stabilan tokom sesije, oblika
<basename-cwd>-<4hex>, pa peers znaju ko govori. - Inbox hook ubacuje nepročitane peer poruke na početak sledećeg prompta agenta.
- Opciono: mDNS / DNS-SD discovery u lokalnoj mreži i federacija između mašina preko mTLS-a sa ed25519 sertifikatima.
Verzija 4.0 (4.0.0–4.0.2, 2026-09-15 – 2026-09-21)
- A2A 1.0 kroz zvanični Go SDK. Ručno pisani protokolni sloj iz 3.x zamenjen je sa a2a-go v2.5.0. Bridge-evi služe JSON-RPC i HTTP+JSON binding-e sa SSE streaming-om i push notifikacijama.
- Breaking promena. Bridge-evi 3.x i 4.x nisu kompatibilni na nivou protokola, pa se svi bridge-evi u mesh-u ažuriraju zajedno. Nestandardni
/v1/REST API i legacy imena metoda su uklonjeni. Putanja Go modula je sadagithub.com/vbcherepanov/a2abridge/v4. - Dodato: podrška za Antigravity CLI, multi-arch Docker image na ghcr.io (linux/amd64 i linux/arm64) i build koji pokreće HTTP stack bridge-a kroz scenarije zvaničnog A2A TCK-a.
- 4.0.1 ispravlja verziju koju prijavljuju binarni fajlovi instalirani preko
go install. - 4.0.2 (2026-09-21): instalacija jednom komandom sada prepoznaje sveže instalirane Codex CLI i Cursor, koji prave svoj direktorijum pre bilo kog konfiguracionog fajla.
- Usklađenost sa specifikacijom: izmereno na v4.0.1 zvaničnim A2A TCK-om (JSON-RPC i HTTP+JSON): 157 prošlo, 6 palo — svih šest zbog a2a-go SDK-a — i 95 preskočeno, uglavnom gRPC provere, koje bridge ne služi. Referentna Python implementacija TCK-a na istom TCK commit-u postiže 198 prošlo, 9 palo. Radi sa zvaničnim Python a2a-sdk 1.1.0 u oba smera (7/7 scenarija). Ovo nije sertifikacija — vidi izveštaj o usklađenosti.
Ključno
- Transport:
a2a_send_messageza fire-and-forget poruke,a2a_get_taskza follow-up. Streaming između peer-ova koji žive u MCP-u se namerno izbegava: keep-alive streaming RPC-a ne odgovara realnom ciklusu LLM poteza. - Hard pravila u ugrađenom skill-u:
- INBOUND-first — obradi nepročitano pre odgovora.
- Self-label na svakom outbound-u.
- Bez spama: poruke su za promene ugovora / API-ja / šeme / javnog ponašanja. Interni refactoring nije povod.
- Ne svaljivati na peers “proveri inbox” — imaju svoj hook.
- Ograničenja zahteva: telo A2A zahteva ograničeno je na 10 MiB, a čitanje zahteva na jedan minut.
Rezultati
Jedan Go binary pod MIT licencom za macOS, Linux, Windows i WSL2, objavljen kao release-ovi 4.0.0–4.0.2 i kao ghcr.io image. Upisuje MCP blok u config svakog pronađenog IDE-a, sa rezervnim kopijama označenim vremenom.
Lekcije
- Chat metafora je pogrešna. Agentima treba red sa hook-ovima, ne chat klijent.
- Praćenje specifikacije znači korišćenje njene implementacije. Zamena sopstvenog protokolnog sloja zvaničnim SDK-om koštala je kompatibilnosti sa 3.x, i ta razmena se isplatila.