khalilbenaz/claude-skills-collection/agent-a2a-protocol-guide
Claude Code and agent skill by khalilbenaz/claude-skills-collection
- community
Checking that the SKILL.md file is still in the repository.
Guide du protocole Agent-to-Agent (A2A) de Google pour l'interopérabilité entre agents IA — découverte, communication et collaboration inter-agents, avec exemples de code, critères de décision et pièges à éviter. Se déclenche avec "A2A", "agent-to-agent", "protocole A2A", "Google A2A", "interopérabilité agents". Also triggers on "agent-to-agent protocol", "agent interoperability", "connect two agents".
Install
npx vskill@latest install khalilbenaz/claude-skills-collection/agent-a2a-protocol-guideSKILL.md
Guide du Protocole A2A
Concepts fondamentaux
| Composant | Rôle | |
|---|---|---|
| Agent Card | Fichier JSON décrivant l'agent (skills, endpoint, auth) — publié sur /.well-known/agent.json | |
| Task | Unité de travail délégué ; cycle : submitted → working → completed / failed / canceled | |
| Artifact | Résultat produit par une tâche (fichier, JSON, message) | |
| Part | Fragment d'un message ou artifact : TextPart, FilePart, DataPart | |
| Client / Server | Un agent peut être les deux selon la direction de l'appel |
Workflow en étapes
1. Définir l'Agent Card
Fichier minimal exposé sur GET /.well-known/agent.json :
Critère de décision — streaming : active streaming: true si les tâches durent > 5 s ou produisent des résultats progressifs. Sinon, mode synchrone suffit.
2. Implémenter le serveur A2A (JSON-RPC 2.0)
Endpoint unique POST /a2a — méthodes requises :
| Méthode | Usage | |
|---|---|---|
tasks/send | Tâche synchrone (réponse directe) | |
tasks/sendSubscribe | Tâche longue — SSE stream | |
tasks/get | Consulter statut + artifacts | |
tasks/cancel | Annuler une tâche en cours |
3. Appeler un agent distant (côté client)
4. Streaming SSE (tasks/sendSubscribe)
5. Découverte et sélection d'agent
Registre simple : maintenir une liste d'URLs connues + cache de leurs Agent Cards (TTL 5 min). Pour du dynamique, utiliser un service de registre central (ex. : endpoint GET /agents dans l'orchestrateur).
6. Sécurité
- Transport : HTTPS obligatoire ; rejeter toute requête HTTP plain.
- Auth : OAuth 2.0 Bearer token ou API key dans
Authorizationheader — déclarer le scheme dans l'Agent Card. - Validation : vérifier la signature de l'Agent Card si elle provient d'un registre tiers.
- Autorisation : liste blanche d'agents autorisés par skill — refuser les appels d'agents inconnus.
7. Orchestration multi-agents
Pattern fan-out / fan-in :
Pattern chaîne séquentielle : sortie artifact de l'agent N devient le message d'entrée de l'agent N+1. Extraire le bon Part depuis artifacts[0].parts.
8. Monitoring et debug
- Propager un
X-Correlation-IDdans tous les appels inter-agents. - Logger :
task_id,agent_url,method,status_transition,duration_ms. - Alertes : tâches en état
workingdepuis > timeout configuré → déclenchertasks/cancel. - Sanity check périodique :
GET /.well-known/agent.jsonsur chaque agent du registre.
Garde-fous et anti-patterns
| Anti-pattern | Problème | Correct | |
|---|---|---|---|
| Stocker l'état des tâches en mémoire process | Perdu au redémarrage | Redis / DB persistante | |
Pas de timeout sur tasks/send | Blocage indéfini | Timeout HTTP + tasks/cancel si dépassé | |
| Agent Card statique en cache illimité | Capabilities obsolètes | TTL max 5 min, invalider sur erreur 404/401 | |
Exposer /.well-known/agent.json sans auth | Enumération par tiers | Auth optionnelle mais recommandée en prod interne | |
Format propriétaire dans les parts | Interop cassée | Utiliser TextPart, FilePart, DataPart standard | |
Ignorer les erreurs return_exceptions en gather | Résultats silencieusement manquants | Logger chaque exception, circuit breaker si taux > seuil |
Bonnes pratiques 2026
- Versionner l'Agent Card (
"version") et gérer la compatibilité ascendante des skills. - Implémenter idempotency via un
taskIdcôté client — le serveur doit dédupliquer les renvois. - Limiter la taille des artifacts inline : au-delà de 1 Mo, retourner une URL signée (
FilePartavecuri). - Déclarer les
inputModes/outputModesMIME précis : facilite la sélection automatique d'agent. - Tester la conformité avec le SDK officiel Google A2A (
pip install a2a-sdkounpm install @google/a2a).
Communication Rules — MANDATORY
- Ultra-concise. No filler, no preamble, no pleasantries.
- Never say "happy to help", "sure!", "great question", "let me", or similar.
- Tool first, talk second. Act before explaining.
- Result first. Lead with outcome, not process.
- Stop when done. No summary, no recap, no trailing commentary.
- No politeness wrappers. Direct and blunt.
- Minimum words. If one word works, do not use ten.
- No unsolicited explanations.
- No emoji unless asked.
Security
- Security scanPassed, 95 of 100Pattern checks on the skill's files.
- Model reviewPassed
Quality evaluation
- Task evaluationNot runNo evaluation yet. Run one in Skill Studio.
Source
- SKILL.md in the repositoryCheckingskills/agent-a2a-protocol-guide/SKILL.md
Popularity
- 7-day trend score
- 5
Not refreshed yet.
Works with
Any agent vskill installs to: 56 targets in all. These 39 have a page on this site.
- Claude Code
- Cursor
- GitHub Copilot
- Windsurf
- Codex
- Gemini CLI
- Cline
- Amp
- Roo Code
- Goose
- Continue
- Kilo Code
- Junie
- Trae
- OpenHands
- Qwen Code
- AI Agent
- Tabnine Chat
- Sourcegraph Cody
- Amazon Q
- Firebase Genkit
- Sweep
- Devin
- Phind
- Mentat
- Claude Desktop
- Aider
- GPT Pilot
- Plandex
- bolt.new
- v0
- Replit Agent
- Anse
- TypingMind
- BetterChatGPT
- LibreChat
- Warp AI
- Pieces
- Fig AI
Embed badge
[](https://verified-skill.com/skills/khalilbenaz/claude-skills-collection/agent-a2a-protocol-guide)