Golem 1.5 salió el 9 de octubre con las manos en el escritorio: Claude podía leer las ventanas de otra máquina, escribir en sus cajas de texto y pulsar sus botones. Desde entonces han salido tres versiones más. Esta nota las junta, porque cada una arregla algo que se notaba al usarla.
1.5.1: las manos, probadas en máquinas reales
La 1.5 la publiqué antes de terminar la certificación, porque un cliente la necesitaba. La certificación la pasó después por el ordenador de un cliente con Golem Assist, por un servidor con el Guardián y por la pantalla de acceso de un ERP en Visual FoxPro, y encontró un fallo serio. Con dos ventanas del mismo programa abiertas, por ejemplo el Explorador y el cuadro «Ejecutar», que los dos son explorer.exe, las teclas pedidas para una podían acabar en la otra. Golem comprobaba que el programa estaba delante, y no la ventana.
En la 1.5.1 se comprueba la ventana, y antes de cada tecla. Si alguien se pone a trabajar en otra ventana a mitad de una escritura, Golem para y dice cuántas teclas llegaron a salir.
Con ese arreglo vinieron otros que salieron de la misma certificación:
- Bajo el Guardián, el ayudante que trabaja en el escritorio ya no puede escribir en ventanas de administrador, tampoco cuando se entra con el Administrador integrado de Windows.
- Con la estación bloqueada (Win+L), las herramientas que escriben o pulsan no hacen nada y lo dicen. Antes, por UI Automation se podía pulsar un botón detrás de la pantalla de bloqueo.
- Lo que Claude escribe como secreto no vuelve a salir por otro lado. Una caja de contraseña de Visual FoxPro no se declara como tal ante Windows, y el valor se podía leer después en claro; el Bloc de notas copia el texto a su título, y el título acababa en el registro. Ahora el agente de Golem recuerda en memoria lo que se le mandó como secreto y lo cambia por
***en todo lo que lee y en cada línea del registro. - En modo solo mirar se pueden usar las tres herramientas que leen la pantalla.
1.5.2: una llamada larga ya no corta las conexiones
La app de Claude corta una herramienta que tarda más de 60 segundos, y en la llamada siguiente reinicia el cliente de Golem. Con eso se perdían todas las conexiones abiertas, también las de otras conversaciones, que comparten el mismo cliente. Un run_powershell de tres minutos bastaba para tirarlo todo.
Desde la 1.5.2 ninguna llamada espera más de 45 segundos. Si la herramienta remota no ha terminado, Golem contesta pending con un identificador, la llamada sigue en la otra máquina y Claude la recoge con resume. Esta versión solo cambió el cliente.
1.5.3: FoxAgent y los demás servidores hijos
Golem puede levantar en la otra máquina otros servidores MCP, como FoxAgent, y publicar sus herramientas junto a las suyas. Si uno de esos servidores se cae, Golem lo vuelve a arrancar y repite la llamada.
Hasta la 1.5.2, Golem tomaba por caído a un servidor que contestaba con un error, o que tardaba más del plazo. Lo cerraba con todo lo que tuviera abierto, lo arrancaba de nuevo y repetía la llamada. En la certificación se vio que así una herramienta que falla con un error corriente se ejecutaba dos veces. En la 1.5.3 solo se reinicia el servidor que se ha caído, porque su proceso ha muerto o porque se ha cortado la comunicación con él. Si contesta con un error, Golem devuelve ese error tal cual, y si se pasa del plazo, lo dice sin repetir la llamada.
También se atascaban las llamadas simultáneas. En un servidor con dos procesadores, ocho llamadas a la vez a FoxAgent tardaban 6 segundos, y con 48 se perdieron seis. Con la 1.5.3, en la misma prueba, las ocho tardan menos de una décima, y 96 llamadas desde cuatro clientes a la vez entran todas en menos de 0,15 segundos.
Esta versión cambia el agente y el cliente. Para tenerla en un servidor hay que actualizar su golem.exe, o el de su Guardián.
Probado
La 1.5.1 y la 1.5.3 han pasado por la certificación en máquinas reales antes de salir, y la 1.5.2, que solo cambiaba el cliente, por las pruebas de siempre. La versión vigente, la 1.5.3, está firmada, y los hashes de cada fichero están en la guía de instalación.