← Artículos

Cómo controla un agente una app del Mac: las 4 vías

· 6 min de lectura

Un agente como Claude Code controla una app del Mac por cuatro vías, de la más barata a la más cara: la interfaz propia de la app (CLI, AppleScript, URL o puerto local), el árbol de accesibilidad, clics por coordenadas en la ventana y, al final, píxeles. La habilidad huashu-mac-use prueba primero la más barata y captura cada paso para verificar.

Por qué no todo es hacer clic en la pantalla

Cuando se habla de computer use, uno imagina a la IA mirando la pantalla y moviendo el ratón. En macOS eso es lo más caro y lo menos fiable. La habilidad huashu-mac-use (licencia MIT) parte de otra idea: cada app tiene varias puertas de entrada y conviene probar primero la más barata.

Si todavía no la tienes instalada, la guía de instalación en Claude Code está en maquina-ia.com/articulos/instalar-huashu-mac-use-en-claude-code.

Las cuatro vías, de la más barata a la más cara

El README las ordena así:

  1. Interfaz propia de la app (L0). La línea de comandos de la app, su diccionario de AppleScript, su esquema de URL o un puerto local (CDP o JSON-RPC). Es el punto de partida por defecto: no roba el foco y funciona aunque la app esté en otro escritorio.
  2. Árbol de accesibilidad (L1). Los controles que macOS expone para accesibilidad. Solo cuenta como vía válida si, después de escribir, el estado de la app de verdad cambió.
  3. Coordenadas de la ventana (L2). El agente mira una captura de la ventana y hace clic o escribe en un punto. Es el recurso principal cuando las dos primeras no están.
  4. Píxeles (L3). La última opción para controlar, y la herramienta de verificación en cada paso.

El paso 0: explorar antes de tocar

Antes de actuar sobre una app, la habilidad corre `probe.sh <nombre-de-la-app>`, que detecta por dónde se puede controlar. El README cuenta por qué: un cliente de escritorio escondía Chromium en una carpeta interna, se trató como app nativa y se hizo todo a clics; días después apareció su puerto de depuración y el trabajo pasó a hacerse sin pedir el foco ni una vez.

En la práctica, tu primer pedido a Claude Code con una app nueva debería ser: «explora si esta app se puede automatizar y dime qué vía sirve antes de tocar nada».

Leer sin molestar y escribir con cuidado

Leer (capturas, lista de ventanas, accesibilidad, CDP) se hace siempre en segundo plano, sin activar la app ni mover el ratón. Para escribir, primero manda los eventos directo al proceso de la app sin robar el foco, y solo si no ve efecto pide el foco prestado, después de cuatro compuertas:

Si la app está en otro escritorio, los clics por coordenadas se rechazan con un error explícito. La salida es una vía estructurada o que tú muevas la ventana.

Cómo saber si de verdad funcionó

El README propone una escalera de pruebas, de la más débil a la más fuerte: que la herramienta diga que funcionó, releer el valor del control, ver el texto en la captura, ver el indicador de estado de la app (por ejemplo, el botón de enviar que se enciende) y, lo más fuerte, el efecto real: la tarea en la lista o el archivo en el disco. Las tres primeras pueden engañar. Por eso cada paso deja una captura: es la prueba que revisas antes de dar el trabajo por bueno.

Dónde se detiene

Las acciones irreversibles, como publicar, enviar, pagar, borrar o sobrescribir, se le devuelven a la persona. Tampoco toca diálogos de permisos del sistema, el llavero ni Touch ID. Y es solo para macOS, con un agente que ejecute comandos en tu Mac.

Preguntas frecuentes

¿Qué vía usa primero un agente para controlar una app del Mac?
Con huashu-mac-use, la primera vía es la interfaz propia de la app: su línea de comandos, AppleScript, esquema de URL o un puerto local. Es la más barata, no roba el foco y funciona aunque la app esté en otro escritorio.
¿Para qué sirve probe.sh?
Es el paso 0 de la habilidad: explora una app antes de tocarla y te dice por dónde se puede controlar, por ejemplo si tiene esquema de URL, diccionario de AppleScript, puerto local o controles de accesibilidad que se puedan editar.
¿Por qué no basta con que la herramienta diga que terminó?
Porque el README documenta casos en los que el texto se veía escrito en la captura y la app no lo había registrado. La prueba fuerte es el indicador de estado de la app o el efecto real, como la tarea creada o el archivo guardado en el disco.
¿Puede el agente publicar o pagar por mí?
No. La habilidad se detiene antes de acciones irreversibles como publicar, enviar, pagar, borrar o sobrescribir, y deja ese botón para la persona. Tampoco toca diálogos de permisos del sistema, el llavero ni Touch ID.

Fuentes

MÁQUINA IA

La comunidad donde dejas de usar IA y empiezas a dirigirla.

Entrar a la comunidad →