Offre d’HalloweenDes bonbons, ou on répare le film !Les trois offres sont en promotion. La licence perpétuelle vous fait économiser $30Jusqu’au 2 nov., 23:59 (heure du Pacifique)

Voir les tarifs

Pourquoi les agents IA ne devraient pas cliquer sur l’écran : construire un plan de contrôle local pour une application de bureau

L’automatisation d’écran est fragile et trop permissive. Avec KwaFlux, l’agent IA passe par des outils typés et l’app reconstruit elle-même chaque tâche.

En bref

La solution tentante pour qu’un agent IA utilise une application de bureau, c’est de le laisser regarder l’écran et cliquer, comme le ferait une personne. Pour une application vidéo, c’est la mauvaise conception. Les clics sont fragiles, l’agent peut atteindre tout ce qu’une souris atteint, et « il a cliqué sur Exporter » ne prouve pas que l’export est correct.

  • Laisser un agent IA piloter une application de bureau en regardant des captures d’écran et en cliquant fonctionne en démo, mais c’est fragile, lent, et cela donne à l’agent tout ce qu’une souris peut faire.
  • KwaFlux expose à la place un plan de contrôle structuré : des outils MCP typés, peu de paramètres par appel, et des vérifications dans l’application avant toute mise en file.
  • L’agent n’écrit pas le traitement complet. Le worker de KwaFlux le reconstruit avec le même générateur de traitements que l’application quand vous cliquez sur Exporter.
  • Les règles partagées avec l’application sont générées, pas recopiées, et les tests échouent si les deux divergent.

KwaFlux prend l’autre voie : un plan de contrôle local qui accepte des requêtes typées, les vérifie et construit le vrai traitement dans l’application.

Dans ce guide, vous verrez pourquoi l’automatisation de l’écran ne suffit pas pour cette tâche, comment s’articulent les couches de KwaFlux, pourquoi l’agent n’envoie que quelques paramètres, et ce que cette conception s’interdit volontairement.

Sommaire

  1. Qu’est-ce qu’un plan de contrôle pour agents IA ?
  2. Automatisation de l’écran ou plan de contrôle
  3. Les couches, de la conversation au worker
  4. Peu de paramètres, reconstruits par l’application
  5. Une seule source de règles pour l’application et l’agent
  6. Ce que le plan de contrôle vérifie avant la mise en file
  7. Des résultats sur lesquels l’agent peut compter
  8. Ce à quoi cette conception renonce
  9. Questions fréquentes

Qu’est-ce qu’un plan de contrôle pour agents IA ?

Un plan de contrôle pour agents IA est une interface programmatique étroite qui permet à un agent de demander à une application des actions précises, tandis que l’application garde l’autorité pour vérifier, refuser et exécuter chaque demande.

Dans KwaFlux, cette interface est un ensemble d’outils MCP, et l’autorité réside dans l’application de bureau en cours d’exécution. L’agent demande ; KwaFlux décide.

Automatisation de l’écran ou plan de contrôle

Les agents de type computer use qui travaillent à partir de captures d’écran sont une vraie avancée, et pour les applications sans API, c’est la seule option. La documentation d’Anthropic sur son outil computer use est franche sur les limites. Elle note que le modèle « agit parfois comme si ses actions avaient réussi sans en vérifier explicitement les résultats », que les menus déroulants et les barres de défilement « peuvent être délicats » à manipuler à la souris, et que des instructions présentes sur des pages web ou dans des images « peuvent prendre le pas sur vos instructions ». Elle recommande d’exécuter computer use dans « une machine virtuelle ou un conteneur dédié, avec des privilèges minimaux ».

Pour une application vidéo installée sur votre ordinateur, comme KwaFlux avec sa Réparation de qualité et ses outils de conversion, ces limites comptent :

QuestionAutomatisation de l’écranPlan de contrôle de KwaFlux
Comment l’agent choisit-il les réglages ?Il lit des libellés sur une capture d’écran et cliqueIl remplit des champs typés dont les valeurs autorisées viennent de la configuration de l’application elle-même
Que se passe-t-il après une refonte de l’interface ?Les clics peuvent tomber au mauvais endroitLes outils continuent de fonctionner ; le contrat, ce sont les paramètres, pas la mise en page
Que peut atteindre l’agent ?Tout ce qui est visible : réglages, pages de compte, autres applicationsUniquement les outils proposés, chacun vérifié par l’application
Comment sait-il qu’un traitement a réussi ?Il regarde de nouveau l’écranIl reçoit un identifiant de tâche, une progression en direct et un résultat structuré
Peut-il suivre seul un long export ?Il doit continuer à prendre des captures d’écranIl attend la tâche avec des mises à jour de progression et peut être annulé
Coût en contexteChaque capture d’écran représente environ 1000 à 1800 tokens d’entrée, selon la documentation d’AnthropicLa liste complète des outils, chargée une seule fois, fait environ 51 Ko de texte

La dernière ligne n’est pas un concours de chiffres exacts. L’idée, c’est qu’un appel structuré coûte la même chose que l’export dure dix secondes ou dix minutes, alors qu’un agent qui surveille l’écran paie chaque coup d’œil.

Les couches, de la conversation au worker

Une demande traverse six couches. Chaque couche a un rôle, et chacune peut dire non.

Six couches de gauche à droite : l’hôte IA (Cursor, Claude, Codex) démarre le processus KwaFlux MCP via stdio ; le processus MCP se connecte à l’application en cours d’exécution par un canal local avec un jeton propre à chaque session ; dans l’application, le plan de contrôle vérifie les chemins, la connexion au compte, la propriété des tâches, les limites de débit et le réglage de téléchargement ; le planificateur met la tâche en file à côté des traitements de l’utilisateur ; le worker reconstruit le traitement complet avec le générateur de l’application et vérifie un bail signé ; le fichier de sortie est écrit à côté de la source
  1. L’hôte IA (Cursor, Claude, Codex et d’autres) démarre le serveur KwaFlux MCP comme un processus local et dialogue avec lui par l’entrée et la sortie standard.
  2. Le processus MCP transforme les appels d’outils en petites requêtes typées et vérifie les chemins de la même façon que l’application, avant de toucher au moindre fichier.
  3. Le canal local relie le processus MCP à l’application en cours d’exécution : un canal nommé (named pipe) réservé à votre compte utilisateur sous Windows, un socket que seul votre compte peut ouvrir sur Mac. Chaque connexion commence par un échange de jeton. L’article sur le canal local traite de cette couche.
  4. Le plan de contrôle de l’application vérifie la demande : le chemin est-il local et absolu, l’utilisateur est-il connecté avec le bon forfait, la tâche appartient-elle à cet agent, l’agent respecte-t-il sa limite de débit, le réglage de téléchargement l’autorise-t-il ?
  5. Le planificateur met le traitement en file à côté de ceux que vous avez lancés dans la fenêtre : ils partagent le même GPU et la même liste de tâches.
  6. Le worker construit le traitement complet, vérifie un bail signé pour les fonctions payantes, lance le moteur et écrit le résultat à côté du fichier source.

Peu de paramètres, reconstruits par l’application

Voici la décision qui détermine tout le reste : l’agent n’envoie pas de description complète du traitement.

Un traitement d’export KwaFlux comporte de nombreux champs : réglages du décodeur, choix des modèles, taille des tuiles, options de l’encodeur, gestion des couleurs, et bien d’autres. Si l’agent pouvait envoyer toute cette structure, deux choses tourneraient mal. Le modèle inventerait des valeurs qu’il ne peut pas vérifier, et quiconque parviendrait à orienter le modèle, via un nom de fichier ou une page web piégés, pourrait atteindre chaque paramètre du moteur.

Chaque outil ne prend donc que les quelques champs qu’une personne choisirait : le fichier d’entrée, le module, une taille de sortie tirée de la liste de l’application, un niveau de qualité, un intervalle pour un GIF. Le worker construit ensuite le traitement complet avec le même générateur de traitements que l’application quand vous cliquez sur Exporter, puis le réduit au contrat de paramètres que le moteur accepte à l’exécution.

Résultat : un traitement lancé par un agent et un traitement lancé à la souris passent par le même code à partir du générateur. Nous parlons des « mêmes règles de paramètres que l’application », et non d’un « résultat identique », parce que quelques outils sont plus restreints via MCP. L’article sur les capacités liste ces différences.

Une seule source de règles pour l’application et l’agent

Deux copies des mêmes règles finissent par diverger. KwaFlux évite d’en garder deux :

  • Le catalogue de modules que propose MCP, y compris la route, les réglages et les valeurs autorisées de chaque module, est généré à partir du même fichier de configuration que les écrans de l’application. Les variantes photo viennent de la section image de ce même fichier.
  • Cinq jeux de règles sont transposés directement depuis le code source de l’application pour le serveur MCP : les niveaux de résolution de sortie, le choix du conteneur et du codec par le Compresseur, les paramètres d’algorithme de l’espace de travail audio, la liste des voix du Changement de voix IA et une règle de détection.
  • Un test de divergence échoue si la version de l’une de ces règles change dans l’application sans que la version MCP ait été régénérée.

La même idée permet de garder des descriptions d’outils courtes, ce que traite l’article sur la conception des outils.

Ce que le plan de contrôle vérifie avant la mise en file

La spécification MCP indique que les serveurs doivent (« MUST ») valider toutes les entrées des outils, mettre en place des contrôles d’accès appropriés, limiter le débit des appels d’outils et assainir les sorties des outils. Dans KwaFlux, ces vérifications se trouvent dans l’application, pas dans le script MCP : un autre client ne peut donc pas les contourner.

VérificationRègle
CheminDoit être un chemin local absolu ; les chemins réseau sont refusés avant l’ouverture de tout fichier
SortieÉcrite à côté de la source ; en cas de conflit de noms, le fichier devient name(1).ext au lieu d’écraser l’existant
Connexion et forfaitLes fonctions payantes demandent d’être connecté avec un forfait, et le worker vérifie un bail signé. Voyez les fonctions payantes dans les appels d’outils IA
PropriétéL’agent ne peut mettre en pause, reprendre, annuler ou relancer que les tâches qu’il a soumises
Limite de débit10 nouveaux traitements par minute au plus au total, et 6 par connexion ; jusqu’à 8 connexions
Taille des messagesChaque message est plafonné à 64 Kio ; les connexions inactives se ferment au bout de 5 minutes
TéléchargementsDésactivés par défaut ; peuvent exiger que vous cliquiez dans une fenêtre sur le bureau
Interrupteur généralUn seul réglage coupe tout contrôle par les agents

Des résultats sur lesquels l’agent peut compter

Chaque outil KwaFlux déclare un schéma de sortie : le résultat est donc une donnée structurée que l’hôte peut valider, pas un paragraphe que le modèle doit interpréter. Quand l’hôte transmet un jeton de progression, KwaFlux envoie des notifications de progression pendant l’exécution d’une tâche. Quand l’utilisateur arrête la demande dans l’hôte, KwaFlux cesse d’attendre et l’agent peut annuler la tâche.

Les résultats de tâche n’indiquent « sortie prête » que lorsqu’une tâche a réellement réussi, et ils donnent le nom du fichier de sortie. Une tâche en file ou en échec ne prétend pas avoir produit quoi que ce soit.

Ce à quoi cette conception renonce

Un plan de contrôle n’est pas plus large que ses outils. Neuf fonctions de KwaFlux demandent à quelqu’un de dessiner sur l’image, de cliquer sur un sujet ou de juger un aperçu, comme la suppression d’objets et le remplacement du ciel. Nous aurions pu laisser l’agent deviner des coordonnées, ou accepter une description de traitement brute. La première option donne des résultats imprévisibles, accompagnés d’un reçu qui affirme que tout a fonctionné. La seconde fait sauter la barrière qui assure la sécurité de cette conception. Ces fonctions restent donc dans l’application, et l’agent a pour consigne d’y renvoyer l’utilisateur.

C’est un choix de produit, pas une lacune que nous comptons combler en assouplissant les règles.

Conclusion

Si un agent doit regarder des pixels pour utiliser votre application, vous ne pouvez pas vérifier ce qu’il s’apprête à faire. Un plan de contrôle renverse la situation : l’agent demande dans un langage étroit et typé, et l’application vérifie, construit et exécute le traitement avec son propre code. Dans KwaFlux, c’est ce qui fait passer un export lancé par un agent par le même générateur de traitements qu’un export lancé à la souris.

Le serveur MCP local de KwaFlux permet à Codex, Claude, Cursor et aux autres applications MCP de mettre de vrais traitements en file dans l’application de bureau. Le traitement IA tourne sur votre propre GPU et vos fichiers média ne sont pas envoyés pour être traités. KwaFlux fonctionne sous Windows 10 (64 bits, version 1809 ou plus récente), Windows 11 et macOS 12 ou plus récent sur Apple Silicon. Importer des fichiers et explorer l’app ne demandent pas de compte. Une connexion avec un forfait payant n’est requise que pour exporter, convertir, réparer un fichier ou télécharger un fichier depuis un lien.

Télécharger KwaFlux · Voir les offres

Testez sur vos propres images

Téléchargez KwaFlux et prévisualisez gratuitement les effets sur vos propres images avant de payer — sans compte, traitement sur votre GPU, sans envoi de vos médias pour le traitement. Les aperçus vidéo durent 1, 3 ou 5 secondes, ceux de la stabilisation 5, 15 ou 30 secondes.

Questions fréquentes

Quelle différence entre computer use et MCP ?

Computer use permet à un modèle de voir des captures d’écran et d’envoyer des actions de souris et de clavier à n’importe quelle application. MCP permet à une application de proposer des outils précis et typés qu’un modèle peut appeler. Computer use est polyvalent mais fragile ; MCP est plus étroit mais vérifiable.

Un agent IA peut-il contrôler n’importe quelle application de bureau ?

En partie. Par l’automatisation de l’écran, il peut faire fonctionner la plupart des applications, avec les limites de fiabilité que documentent les éditeurs. Un contrôle fiable suppose que l’application propose une API ou des outils MCP. Voyez ce qu’un assistant IA peut faire dans une application vidéo via MCP pour un exemple.

Pourquoi ne pas laisser le modèle écrire des commandes ffmpeg ?

Parce qu’une commande générée ne vaut que ce que vaut la supposition du modèle, et que c’est l’utilisateur qui doit l’exécuter. Appeler le moteur de l’application utilise des réglages que l’application a déjà testés, et l’application peut refuser une entrée incorrecte.

Un serveur MCP doit-il accepter une configuration brute venant du modèle ?

En général, non. Une configuration brute livre au modèle tous les paramètres, y compris ceux qui changent l’emplacement des fichiers ou le comportement du programme. De petites entrées typées que le serveur développe lui-même sont plus faciles à valider.

Les résultats d’un outil MCP doivent-ils avoir un schéma ?

Non, mais c’est utile. La spécification MCP permet à un outil de déclarer un schéma de sortie, et les serveurs qui le font doivent renvoyer des résultats conformes, pour que les clients puissent les valider.

Sources

  1. Anthropic, "Computer use tool" (security considerations; reliability; screenshot token cost) (consulté le 2026-10-25)
  2. Model Context Protocol, "Tools" (2026-07-28; output schema; Security Considerations) (consulté le 2026-07-28)
  3. Model Context Protocol, "Progress" (2025-11-25; progressToken and progress notifications) (consulté le 2025-11-25)
  4. Model Context Protocol, "Cancellation" (2025-11-25; notifications/cancelled) (consulté le 2025-11-25)
  • tutoriel
  • MCP

Auteur et éditeur chez KwaFlux. Les articles sont relus par la rédaction de KwaFlux et s’appuient sur nos notes de recherche produit et les spécifications publiées.