Sign inGet Started

Skills d'agent

Bird publie des skills d'agent : des fichiers de procédures packagés qui enseignent à un agent de développement les workflows bird CLI. Un skill fournit le chemin nominal de l'opération, les vérifications d'état à effectuer en amont, et les pièges qui gaspillent des itérations de boucle. Ce guidage aide l'agent à formuler la bonne commande sans redécouvrir les options et les modes d'échec à partir de la sortie de --help.
Ils sont distribués sous forme du plugin marketplace bird-ai, une source unique que Claude Code, Cursor, Codex et GitHub Copilot lisent chacun comme un plugin. Factory Droid copie plutôt les fichiers de skills manuellement (voir Installer le plugin). Sur Claude Code, l'installation du plugin enregistre aussi le serveur MCP hébergé, auquel vous vous connectez ensuite une fois avec /mcp (voir Skills, plugin et MCP).
Chaque référence encode une opération par tâche. L'agent choisit celle qui correspond à la requête. Hormis le prérequis d'authentification partagé, elles n'ont pas d'ordre.

Installer le plugin

Le marketplace se trouve à messagebird/bird-ai. Le plugin suit la spécification Agent Plugins, donc un client qui l'implémente l'installe depuis ce dépôt tel quel, skills et serveur MCP inclus.
Les étapes par client ci-dessous couvrent le reste. Sur Claude Code, exécutez :
Exemple de code
claude plugin marketplace add messagebird/bird-ai
claude plugin install bird@bird-ai
Sur Cursor, ajoutez le marketplace et installez le plugin bird depuis Settings > Plugins. Sur Codex, exécutez codex plugin marketplace add messagebird/bird-ai, puis codex plugin add bird@bird-ai. Sur GitHub Copilot, exécutez copilot plugin marketplace add messagebird/bird-ai, puis copilot plugin install bird@bird-ai. Factory Droid n'a pas de format de plugin à lire : clonez messagebird/bird-ai et copiez les deux répertoires de skills depuis plugins/bird/skills/ dans .factory/skills/ manuellement.

Les skills

Deux skills sont inclus dans le plugin.
bird-cli est le skill généraliste. Il achemine une requête vers une référence par groupe de commandes CLI, de sorte que l'agent charge la page de l'opération en cours et rien d'autre. Sa table de routage couvre l'envoi et la consultation de messages sur chaque canal que Bird prend en charge, la configuration nécessaire à chaque canal avant l'envoi, la vérification par code à usage unique, la recherche de destinataires, les contacts et audiences, les préférences de messagerie, le provisionnement Realtime, les webhooks, les clés API, les tickets de support et la recherche dans la documentation. Le SKILL.md du skill contient cette table, et c'est la liste de référence : cette page ne la reproduit pas volontairement, car une deuxième copie est une copie qui devient obsolète.
Toutes les entrées partagent un comportement qui mérite d'être signalé ici, car c'est celui que les agents reproduisent mal : un envoi renvoie 202 avec status: accepted, ce qui signifie que Bird a accepté le message et que la livraison est encore en attente. Les skills apprennent à l'agent à relire le message pour connaître le résultat final au lieu de déclarer un succès dès accepted.
email-audit est un skill spécialisé. Il exécute bird email tools audit <domain> pour résoudre et évaluer les enregistrements DMARC, SPF, DKIM, BIMI et MX actifs d'un domaine, puis renvoie les résultats étiquetés par sévérité sous forme de liste de correctifs priorisée. Il ne travaille qu'avec le DNS, il n'a donc besoin d'aucune authentification et n'envoie aucun e-mail.

Le prérequis partagé : s'authentifier d'abord

Presque toutes les opérations interrogent le Bird API en production, donc bird-cli commence chacune d'elles en confirmant les identifiants avec bird auth status. La vérification est idempotente et ne fait rien quand le CLI indique déjà valid: true ; elle peut donc être exécutée en premier à chaque fois sans risque. Sans elle, une connexion manquante échoue de la même manière qu'une vraie erreur API et peut envoyer l'agent sur une mauvaise piste de débogage.
Les exceptions sont les opérations qui lisent quelque chose de public plutôt que votre espace de travail : email-audit résout le DNS, et la recherche dans la documentation lit la documentation publiée. Aucune des deux ne nécessite de connexion, et aucune n'est bloquée par une connexion manquante.
Exemple de code
bird auth status --format json
# gate on "valid": true, then run the operation
Si les identifiants sont absents, le skill dirige l'agent vers bird auth login puis le ramène à la tâche. L'authentification utilise un navigateur, avec un flux de code d'appareil pour les hôtes sans interface, de sorte que le workflow ne bloque pas sur une invite d'authentification.

Les échecs remontent partout de la même manière

Comme chaque opération est un wrapper léger au-dessus du API en production, les échecs reviennent via le contrat uniforme du CLI plutôt que par une gestion d'erreur propre à chaque skill :
  • JSON par défaut : les succès affichent du JSON structuré sur stdout et les erreurs vont sur stderr, ce qui permet à la boucle de l'agent d'analyser les résultats sans scraper du texte.
  • Codes de sortie sémantiques : l'un des six codes indique à l'agent la catégorie d'échec avant même qu'il lise le message. Consultez le tableau complet dans CLI. L'agent branche sur la catégorie sans analyser le message : exit 4 signifie relancer l'étape d'authentification, et exit 3 signifie que l'ID de ressource est incorrect, donc réessayer ne sert à rien.
C'est le même contrat que le CLI présente aux humains et aux scripts. Les skills n'ajoutent aucune couche ; ils apprennent à l'agent à utiliser le contrat existant. Consultez CLI pour les agents pour le contrat complet, formats de sortie et configuration inclus.

Composer des skills en boucle d'agent

Comme chaque référence est une opération auto-vérifiante avec un résultat lisible par la machine, elles se composent en boucle sans code de liaison. Par exemple, "send the launch email and confirm it delivered" se décompose comme suit :
  1. S'authentifier : exécutez bird auth status ; connectez-vous uniquement si nécessaire.
  2. Trouver un expéditeur : utilisez la référence des domaines pour choisir une adresse from sur un domaine vérifié. Exit 0 plus un domaine vérifié dans le JSON signifie que cette étape est terminée ; sinon, entrez dans la boucle de création et de vérification.
  3. Envoyer : utilisez la référence e-mail pour exécuter bird email send …. Une requête réussie renvoie 202, un ID em_… et status: accepted.
  4. Confirmer le résultat : utilisez à nouveau la référence e-mail pour exécuter bird email get <em_…> jusqu'à ce que les compteurs indiquent delivered. S'ils indiquent bounced, signalez l'échec.
La condition "done when" de chaque étape est vérifiable à partir de la sortie JSON de l'étape précédente, ce qui rend la boucle fiable : l'agent n'a jamais à déduire l'état à partir de texte.

Skills, plugin et MCP

Les skills sont l'une des trois façons de connecter un agent à Bird, et ils se superposent plutôt que de se concurrencer :
  • Le bird CLI est la surface d'exécution. Les skills supposent un agent capable d'utiliser un shell pour l'exécuter.
  • Le serveur MCP est l'alternative pour les agents qui appellent des outils au lieu d'exécuter des commandes ; les opérations sont équivalentes, le transport diffère.
  • AI onboarding est le parcours guidé de configuration qui connecte l'un ou l'autre en quelques minutes.
Le fait que l'installation du plugin configure aussi le serveur MCP dépend du client. Claude Code permet à un plugin de déclarer un serveur MCP distant, donc installer bird-ai y enregistre https://mcp.bird.com pour vous. Le plugin d'OpenCode enregistre aussi le serveur : https://mcp.bird.com/dynamic par défaut, ou le https://mcp.bird.com complet avec le mode code expérimental d'OpenCode activé. Les autres clients prennent en charge les MCP distants, mais leurs plugins ne peuvent pas pré-déclarer un serveur. Sur Cursor, Codex et Copilot, le plugin installe les skills ; sur Droid, vous copiez les fichiers de skill à la main. Ces clients nécessitent l'ajout manuel du serveur, en suivant la configuration en une ligne du guide du serveur MCP.
Aucun plugin ne peut s'authentifier à votre place. Le serveur hébergé est protégé par OAuth, donc sur chaque client, y compris Claude Code, vous vous connectez une fois après l'enregistrement du serveur : dans Claude Code, c'est /mcp, puis sélectionnez bird, puis Authenticate. Tant que vous ne le faites pas, les outils sont listés mais chaque appel échoue. Les étapes d'authentification par client couvrent le reste.
ClientSkills via pluginServeur MCP enregistréConnexion
Claude CodeOuiOui, déclaré par le pluginVous : /mcp > bird > Authenticate
CursorOuiManuel, ajoutez le serveur distant une foisVous : Needs login dans Tools & Integrations
CodexOuiManuel, ajoutez le serveur distant une foisVous : codex mcp login bird
GitHub CopilotOuiManuel, ajoutez le serveur distant une foisVS Code ouvre le navigateur au premier lancement
Factory DroidManuel, copiez les fichiers de skillsManuel, ajoutez le serveur distant une foisVous : /mcp dans droid
OpenCodeOuiOui, déclaré par le pluginVous : opencode mcp auth bird

Étapes suivantes

  • Configurer votre agent de développement : la configuration en une invite qui installe le plugin pour vous.
  • Serveur MCP : la surface d'outils incluse dans le plugin, et comment l'ajouter manuellement.
  • CLI pour les agents : la surface de commandes enseignée par les skills, pour les agents capables d'utiliser un shell.
  • AI onboarding : la configuration guidée de bout en bout avec le corpus de documentation intégré.