UI Actions permet d'automatiser l’interface des apps macOS grâce à Raccourcis

Nicolas Furno |

UI Actions est une nouvelle app destinée à enrichir Raccourcis, la solution d’automatisations d’Apple, avec ses propres actions. Cette app actuellement en bêta est réservée à macOS et elle ambitionne d’offrir une solution pour automatiser l’interface du système, une technique que l’on connaît aussi sous le nom de GUI scripting. L’idée est d’automatiser en simulant des interactions humaines, comme un clic sur un bouton, l’activation d’un élément dans la barre des menus ou encore la saisie d’une combinaison au clavier.

Ce raccourcis active le menu de partage d’une app et automatise dans l’envoi d’un fichier en utilisant ce partage, tout ça en maniant l’interface et en utilisant des raccourcis clavier. Image MacGeneration.

L’avantage de cette approche est que l’on peut dès lors automatiser des apps qui ne proposent pas les bases pour l’automatisation. C’est en réalité le cas de la majorité d’entre elles, surtout l’automatisation avec Raccourcis qui est loin d’être exhaustive sous macOS. Faute de mieux, on peut alors créer des raccourcis où l’on demande de cliquer sur une commande dans un menu, sur un bouton dans l’interface ou encore en utilisant un raccourci clavier.

J’ai testé l’app pour l’envoi d’une image avec l’outil développé en interne par MacGeneration. Cette app s’intègre dans le menu de partage de macOS, si bien qu’on peut l’activer par le biais du menu « Fichier » puis « Partager ». J’utilise ensuite une combinaison de raccourcis clavier et de clics sur des boutons pour sélectionner l’option que je veux dans l’interface de cet outil et effectuer l’envoi. Voici ce que cela donne concrètement :

Voici ce que donne mon raccourci bricolé rapidement. On pourrait sans doute accélérer un petit peu les temps de traitement, mais cela fonctionne correctement ainsi. Image MacGeneration.

C’est une automatisation que j’ai mise en place il y a quelques années avec l’excellent Keyboard Maestro et qui fonctionne remarquablement bien. UI Actions n’est pas aussi sophistiquée et ses actions sont un petit peu plus lentes, si bien qu’il faut penser à jouer sur les délais après chaque action. Malgré tout, le résultat est identique et c’est intéressant de pouvoir le faire avec une app intégrée au système.

Pendant la phase de bêta, l’app est entièrement gratuite et d’après mes essais, elle fonctionne déjà bien. Vous pouvez la tester en téléchargeant une copie depuis le site officiel, en sachant qu’elle sera à terme payante et apparemment associée à une formule à la Sketch, avec une licence qui permet de télécharger des mises à jour pendant un an. On ne connaît pas encore les tarifs de la version finale.

macOS 13.3 est nécessaire au minimum et l’interface n’est pas traduite en français.

avatar Brice21 | 

Je rêve d’une app qui fasse la même chose pour iOS afin de contrôler certaines apps avec Shortcut et Siri. En effet pas mal d’apps n’exposent pas leur Intents, surtout celle bricolées avec des frameworks hybrides Android/iOS.

Il est déjà possible d’enregistrer des gestes (glisser, touch, …) avec l’option d’accessibilité AssistiveTouch puis de les déclencher en touchant le bouton menu flottant. Mais impossible de les déclencher avec Shortcut ou Siri.

Si une telle option existait dans iOS ou via une app (ce qui ne me semble pas possible avec la SandBox actuelle), cela me permettrait de rédiger des shortcut intégrant n’importe quelle app.

Par exemple je pourrais enregistrer le geste glissant d’ouverture de ma porte dans l’app Biticino et déclencher par Siri le lancement de l’app puis l’execution du geste lorsqu’on sonne. Alors que pour le moment il faut trouver l’iPhone, le déverrouiller, trouver l’app, ouvrir l’app, et ouvrir la porte… trop souvent le coursier s’est déjà barré.

avatar Nicolas Furno | 

@Brice21

Ce serait sympa sous iOS en effet, mais c'est impossible à l'heure actuelle. Peut-être qu'Apple le fera un jour… 🤞

avatar hugome | 

On peut faire à peu près la même chose en récupérant quelques librairies open source en Python et en lançant des commandes Shell depuis du code écrit en Apple Script.
En vrai c’est pas très compliqué et ça évite une application tierce.

avatar appleadict | 

@hugome

"On peut faire à peu près la même chose en récupérant quelques librairies open source en Python et en lançant des commandes Shell depuis du code écrit en Apple Script. "

tu aurais un lien sur une page donnant des détails ?

avatar fleeBubl | 

La feuille de route vers Sikuli, semble impressionnante 😉
Mais quel bonheur, comparé à de l’UI scripting « traditionnel » ☺️

avatar hugome | 

@fleeBubl

Il faut que tu m’expliques parce que je ne connais rien de tout ça

avatar fleeBubl | 

« Eventually it would be great to offer the same type of features that Sikuli offers. »
https://pyautogui.readthedocs.io/en/latest/roadmap.html

avatar hugome | 

Merci.

avatar appleadict | 

@hugome

merci 🙏

avatar math65 | 

@hugome

Pas compliqué, pour un dev ou quelqu'un qui veut s'y mettre. En soit tu peux remplacer raccourci ou automator si tu veux

avatar bunam | 

Un truc dingo, avec l'app de base Raccourci comment créer une alarme à 8h00 puis l'activer
bien sûr s'il y en a déjà une ne pas la créer mais juste l'activer...
Impossible pour ma part d'y arriver.

avatar Nesus | 

Quel régression d’an l’automatisation pour macOS. Avoir abandonné Automator, c’est quand même assez incompréhensible.

CONNEXION UTILISATEUR