Le protocole Agent Client Protocol, ou ACP, est désormais disponible dans WebStorm. Il offre aux développeurs un moyen unifié d’utiliser différents agents d’intelligence artificielle au sein d’un environnement de développement JavaScript et TypeScript, sans devoir quitter l’environnement de développement intégré ni s’engager auprès d’un seul fournisseur.
JetBrains précise que les équipes disposant déjà d’abonnements auprès d’Anthropic, d’OpenAI ou de Google peuvent utiliser directement ces services dans WebStorm, sans abonnement supplémentaire à JetBrains AI. JetBrains AI reste une option adaptée pour gérer plusieurs modèles depuis un même endroit, mais il ne constitue plus la seule manière d’utiliser des agents dans WebStorm.
Un protocole qui sépare l’environnement de développement de l’agent
ACP fonctionne comme une norme ouverte qui sépare l’environnement de développement intégré de l’agent d’intelligence artificielle, à l’image du rôle joué par le Language Server Protocol, ou LSP, dans la séparation entre les éditeurs et les outils de prise en charge des langages. Au lieu de changer d’éditeur pour obtenir un meilleur outil destiné à un langage ou à une tâche donnée, le développeur peut rester dans WebStorm et choisir l’agent le mieux adapté à la tâche, qu’il s’agisse de refactoriser une application React ou de planifier une architecture logicielle.
WebStorm envoie à l’agent le contexte nécessaire, comme les fichiers, les différences et les sorties du terminal, tandis que l’agent renvoie des actions pouvant être exécutées dans le projet, telles que des modifications de fichiers, des appels d’outils et des commandes shell. Les développeurs peuvent ainsi basculer entre plusieurs agents spécialisés tout en conservant l’indexation locale, la navigation et les capacités de refactorisation offertes par WebStorm.
Selon l’article, l’importance de cette approche tient aux différences entre les points forts des agents. Lors d’un test indépendant portant sur des tâches de conversion de conceptions Figma en code, les agents ont obtenu des résultats compris entre 3,3 et 3,6 sur 5 pour la structure des composants, mais leurs résultats pour l’extraction des tokens de conception sont tombés dans une fourchette comprise entre 1,7 et 2,9. Aucun agent ne domine tous les aspects, et le classement des agents peut évoluer avec l’apparition de nouvelles versions.
Intégrations et agents personnalisés
Au lieu de créer une intégration distincte pour chaque nouvel agent, tout agent qui implémente ACP devient un citoyen de première classe dans WebStorm. GitHub Copilot fournit un serveur ACP, tandis que Claude Code dispose d’un adaptateur ACP officiel, d’autres agents majeurs rejoignant également l’écosystème.
- Registre et agents personnalisés : il est possible de choisir des agents dans le registre JetBrains, comme Junie, ou de connecter un agent privé compatible avec ACP au moyen d’un fichier acp.json.
- Utiliser sa propre clé et contrôler l’infrastructure : comme ACP n’est pas lié à un fournisseur particulier, il permet de diriger les agents vers Azure, AWS, Anthropic ou des modèles de langage locaux.
- Gouvernance et données : la connexion s’effectue directement entre l’environnement de développement et l’agent, ce qui aide les équipes à maintenir le flux de données dans les limites approuvées par leurs instances juridiques ou réglementaires.
Un flux de travail, de la conception au navigateur
JetBrains fournit l’exemple de la création d’un tableau de bord React complexe à l’aide de plusieurs agents. Le travail commence par la sélection d’un agent spécialisé dans le développement front-end. Figma Connect for WebStorm utilise ensuite directement le contexte de conception dans WebStorm et envoie à l’agent les fichiers de thème ainsi que les spécifications des composants concernés. L’agent renvoie alors les modifications des fichiers, et le serveur ACP les applique au projet.
Le rôle ne se limite pas à l’écriture du code. Lorsqu’il faut corriger une erreur dans la console et vérifier la solution dans le navigateur, Chrome Connect, une compétence intégrée de la ligne de commande Chrome DevTools dans WebStorm, donne à l’agent un accès direct à Chrome. Il peut lire les journaux de la console et les requêtes réseau, remonter l’erreur jusqu’à sa source, appliquer le correctif et vérifier que le problème a disparu. Cette intégration nécessite une configuration unique et a été développée en partenariat avec l’équipe Chrome DevTools de Google.
La même idée peut s’appliquer à des tâches telles que la création de messages de commit conformes à Conventional Commits, la préparation d’une revue de code, la réalisation de modifications sur plusieurs fichiers et la rédaction de documentation. La différence est que les fichiers, le projet et les différences actuelles restent en place lors du changement d’agent ; seul l’agent change.
Ce que signifie ACP pour les équipes
JetBrains estime qu’ACP peut s’intégrer aux structures de gouvernance de l’intelligence artificielle mises en place par les responsables techniques. Les équipes peuvent définir les fournisseurs autorisés, les exigences de conformité et les agents disponibles, puis les mettre à la disposition des développeurs sans configurations individuelles répétées. Elles peuvent également créer des agents compatibles avec ACP, préalablement dotés de connaissances sur les projets internes, les normes de programmation et la documentation des API privées.
ACP est désormais disponible dans WebStorm. Il est accessible depuis le menu Agents de JetBrains AI, où les agents de fournisseurs tiers apparaissent aux côtés de Junie et de Quick Edit dès qu’ils sont disponibles sur la plateforme JetBrains AI. La documentation de WebStorm consacrée à ACP explique les étapes permettant de connecter un agent privé ou de configurer le BYOK.