Live 18/11 · Cohorte 318 nov à 19h00 MSK — atelier pratique gratuit sur les agents IA · La Cohorte 3 démarre le 23/11Atelier 18/11 →Cohorte 3 (23/11)

Vercel lance agent-desktop : les agents pilotent n'importe quelle application sans captures d'écran

Vercel Labs a publié agent-desktop, un outil qui permet à un agent de piloter des applications de bureau via l'accessibility tree du système d'exploitation, et non via des captures d'écran. L'agent reçoit un JSON où chaque bouton possède une ref, clique, puis relit l'arbre pour vérifier le résultat. C'est plus rapide et plus fiable que le computer use basé sur des images, et la licence est Apache-2.0.

Traité par IA depuis TG: @ai_product (AI Product / Igor Akimov) ; édité par Hamidun News
Vercel lance agent-desktop : les agents pilotent n'importe quelle application sans captures d'écran
Source : TG: @ai_product (AI Product / Igor Akimov). Collage: Hamidun News.
Écouter l'article
Fiche synthèse et chiffres clés
ParamètreDonnées
Source primaireTG: @ai_product (AI Product / Igor Akimov) ↗
Rédacteur en chef
Chiffre clé #1Un seul binaire Rust d'environ 15 Mo, 60 commandes identiques sur Mac, Windows et Linux
Chiffre clé #2Un squelette de l'arbre plutôt qu'un dump complet économise 78 à 96 % de tokens
Chiffre clé #3Ne fonctionne pas si l'application ne publie pas d'accessibility tree

Si vous avez déjà essayé d'automatiser une application de bureau avec un modèle exploitant des captures d'écran, vous connaissez le problème : c'est lent, coûteux et fragile. Un pixel déplacé ou un changement de thème, et l'agent rate son bouton. Vercel Labs propose une autre voie : agent-desktop, un outil qui ne regarde tout simplement pas l'image.

Comment ça marche

Le système d'exploitation sait déjà ce qui se trouve à l'écran. Pour les lecteurs d'écran, il dispose d'un accessibility tree : un arbre d'éléments avec rôles, noms, états et focus. Sur macOS, c'est l'AX API ; sur Windows, UI Automation ; sur Linux, AT-SPI. agent-desktop lit cet arbre et renvoie à l'agent un JSON où chaque élément possède une ref.

La boucle est simple. L'agent demande l'arbre, trouve le bon bouton, clique via sa ref, relit l'arbre et vérifie que l'action a fonctionné. Par exemple, au lieu de « clique approximativement au point 540×320 », l'agent dit « appuie sur la ref e12, c'est le bouton Envoyer » et s'assure que le champ de saisie a été vidé.

En interne, un seul binaire Rust d'environ 15 Mo, sans dépendances. Il s'installe avec la commande npm install -g agent-desktop. Il compte 60 commandes, identiques sur les trois plateformes ; chacune affiche du JSON puis se termine. Il n'y a pas de LLM intégré : la boucle « regarder, agir, vérifier » vit dans votre agent. La licence est Apache-2.0, et un skill que l'agent lit avant de travailler est également fourni. Pour Electron et Chromium, l'outil ouvre un port DevTools auquel agent-browser peut déjà se connecter.

Le principal problème : le contexte

L'arbre complet d'une application est énorme. Le dump de Slack dépasse facilement 50 000 tokens, et l'agent s'y noie avant même le premier clic. On commence donc par un « squelette » de quelques niveaux de profondeur, et seule la branche utile est développée. Selon l'auteur, sur Slack, VS Code et Notion, cela économise 78 à 96 % de tokens. Ces chiffres sont ceux de l'auteur et personne ne les a encore vérifiés de façon indépendante : mesurez donc par vous-même sur votre application.

L'histoire du projet est aussi intéressante. Tout a commencé comme le travail d'un seul développeur, inspiré par agent-browser ; l'outil sort désormais sous la marque Vercel Labs et figure dans leur documentation. Soit la personne a été embauchée, soit le projet a été racheté. Un parcours classique de l'open source.

Limites

La principale limite découle de l'idée même : si l'application ne publie pas d'accessibility tree, l'agent ne la voit pas. Les contrôles faits maison, les jeux et certaines builds Electron où l'accessibilité est désactivée passeront à travers. Sous Windows, un piège supplémentaire existe : si la fenêtre est lancée avec des droits élevés, l'outil se heurte à la politique de sécurité.

C'est particulièrement important pour les logiciels d'entreprise. C'est précisément là, dans 1C, les logiciels de comptabilité et les clients internes, que l'automatisation est la plus utile, alors que la prise en charge de l'accessibilité y est souvent embryonnaire. Les déclarations tonitruantes sur la mort du RPA sont à relativiser : vérifiez d'abord que votre application expose bien un arbre.

Que faire en pratique

L'analogie avec Playwright est exacte : de la structure plutôt que des pixels. Si vous avez des systèmes de bureau internes, prenez une heure pour examiner leur arbre d'accessibilité avec agent-desktop. S'il est riche, vous obtiendrez une automatisation nettement moins chère et plus stable que le computer use sur captures d'écran. S'il est vide, les captures d'écran restent la solution de repli.

Pour les product managers et les fondateurs, un autre point mérite attention : l'outil n'est pas lié à un harnais d'agent particulier. C'est simplement une CLI, connectable à n'importe quel agent, et c'est là sa force. Commencez par une tâche routinière, par exemple l'export d'un rapport depuis un vieux client, et comparez le coût en tokens et le taux d'exécutions réussies avec votre approche actuelle.

Ce n'est pas la fin du RPA, mais c'est un pas sérieux : les agents disposent désormais d'un moyen peu coûteux et portable de voir l'interface comme le système la voit lui-même.

Dossier

Questions clés sur cet article

Comment ça marche?

Le système d'exploitation sait déjà ce qui se trouve à l'écran. Pour les lecteurs d'écran, il dispose d'un accessibility tree : un arbre d'éléments avec rôles, noms, états et focus. Sur macOS, c'est l'AX API ; sur Windows, UI Automation ; sur Linux, AT-SPI. agent-desktop lit cet arbre et renvoie à l'agent un JSON où chaque élément possède une ref. La boucle est simple. L'agent demande l'arbre, trouve le bon bouton, clique via sa ref, relit l'arbre et vérifie que l'action a fonctionné.

Que sait-on sur Le principal problème : le contexte ?

L'arbre complet d'une application est énorme. Le dump de Slack dépasse facilement 50 000 tokens, et l'agent s'y noie avant même le premier clic. On commence donc par un « squelette » de quelques niveaux de profondeur, et seule la branche utile est développée. Selon l'auteur, sur Slack, VS Code et Notion, cela économise 78 à 96 % de tokens. Ces chiffres sont ceux de l'auteur et personne ne les a encore vérifiés de façon indépendante : mesurez donc par vous-même sur votre application.

Que sait-on sur Limites ?

La principale limite découle de l'idée même : si l'application ne publie pas d'accessibility tree, l'agent ne la voit pas. Les contrôles faits maison, les jeux et certaines builds Electron où l'accessibilité est désactivée passeront à travers. Sous Windows, un piège supplémentaire existe : si la fenêtre est lancée avec des droits élevés, l'outil se heurte à la politique de sécurité. C'est particulièrement important pour les logiciels d'entreprise.

ZK
Zhemal Khamidun — CPO d'Alpina Digital, product manager d'AlpinaGPT. Conçoit des produits IA depuis 2019. Hamidun News est un projet personnel devenu un agrégateur en production avec plus de 6 000 lecteurs.
✦ Hands-On AI Engineering · Hamidun Academy

Build & Ship Production AI Agents Without Boilerplate Code

Start your free 72-hour trial at Hamidun Academy (academy.hamidun.com) — interactive lessons on Claude Code & Cursor, live Tech Radar, and production agent templates.

Start 72h Free Trial →Vibe-Coding Intensive
Qu'en pensez-vous ?
Chargement des commentaires…