CLI-Anything: convertir GIMP, Blender o LibreOffice en algo que tu agente sabe manejar

Que un agente mueva el ratón por la ventana de un programa es frágil y lento. Este proyecto propone lo contrario: darle a cada programa una boca de terminal por la que el agente pueda hablarle.

Guillermo del Pino
Guillermo del Pino
HKUDS/CLI-Anything
Estrellas
47,5K
Lenguaje
Python
Licencia
Apache-2.0
Datos de
13 ago 2026

Las estrellas cambian a diario. La cifra es la del día indicado, no la de hoy.

Hay una frase en este repositorio que resume el problema mejor que ningún análisis: el software de hoy sirve a personas, y los usuarios de mañana serán agentes.

El asunto es concreto. Le pides a un agente que te recorte doscientas imágenes y lo intenta como lo harías tú: moviendo el ratón por la ventana de un programa, buscando el menú, esperando a que se abra un diálogo. Eso es lento, se rompe cuando cambia un icono y falla el 30 % de las veces. CLI-Anything propone lo contrario: en vez de enseñar al agente a usar la ventana, generar para cada programa una interfaz de terminal completa por la que el agente pueda hablarle en texto.

Con 47.500 estrellas, no es un experimento. Es de los proyectos con más tracción de todo este terreno.

Publiqué 172 artículos en marzo y fue mi peor mes

Tenía esta web parada y la estoy rehaciendo con IA. Cambié la forma de hacerlo y en once días de agosto ha tenido más visitas desde Google que en todo julio. Te cuento por correo qué cambié.

impresiones clics1-9 ago · 710 → 2.522
  • · Por qué la oportunidad es mayor ahora, y no menor
  • · Lo único que la IA no te puede copiar: tu criterio
  • · Cómo hacer que Google te vea en días, no en seis meses

Qué hace exactamente

Dos cosas distintas, y conviene no mezclarlas.

La primera: un catálogo de programas ya convertidos. Más de 40, y la lista es seria: GIMP, Blender, Inkscape, Krita, Audacity, LibreOffice, QGIS, Kdenlive, OBS Studio, Calibre, Zotero, ComfyUI, n8n, Ollama, Godot, Draw.io. Te instalas la interfaz del que te interese y tu agente ya sabe manejarlo.

La segunda: una máquina de fabricar interfaces. Le apuntas a la carpeta de un programa que no está en el catálogo y te genera la suya, siguiendo un proceso de siete fases: analiza el código, diseña las órdenes, las implementa, planifica pruebas, las escribe, documenta el resultado en un SKILL.md para que el agente lo descubra solo, y lo publica.

El dato que da confianza: dicen tener más de 2.400 pruebas automáticas pasando entre las 40 interfaces, entre unitarias y de extremo a extremo.

Y un detalle que evita el malentendido más común: las interfaces llaman al programa de verdad. Cuando el agente le pide un render a Blender, lo renderiza Blender. Cuando le pide un PDF a LibreOffice, lo genera LibreOffice. No hay imitación ni sustituto.

Por qué esto es mejor que automatizar la ventana

Vale la pena entenderlo, porque explica hacia dónde va todo esto.

Automatizar la ventanaInterfaz de terminal
FiabilidadSe rompe si cambia el diseñoEstable mientras exista la orden
VelocidadEspera a que se pinte cada pantallaInmediata
Coste en tokensAlto: hay que describir la pantallaBajo: texto que entra y texto que sale
ResultadoUna captura que hay que interpretarDatos estructurados con --json

Ese --json del final es la clave silenciosa. Un agente que recibe una tabla de texto tiene que leerla e interpretarla, y ahí es donde se inventa cosas. Un agente que recibe datos estructurados no interpreta nada: los usa.

Además guardan estado de sesión, con deshacer y rehacer. O sea, que el agente puede trabajar en un proyecto a lo largo de varias órdenes en vez de empezar de cero cada vez.

Cómo probarlo con Claude Code o Codex

Hay tres vías, según lo que quieras hacer. Requisitos comunes: Python 3.10 o superior y tener instalado el programa en cuestión.

Si solo quieres usar un programa del catálogo:

pip install cli-anything-hub
cli-hub list
cli-hub install gimp
cli-hub launch gimp

Si prefieres que el agente se busque la vida solo, la skill que le enseña a descubrir e instalar la interfaz que necesite:

npx skills add HKUDS/CLI-Anything --skill cli-hub-meta-skill -g -y

Esa -g la instala como personal, disponible en todas tus sesiones. Si solo la quieres para un proyecto, quítala y hazlo desde la carpeta del proyecto. El porqué de esa distinción, en la guía de repos con Claude Code y Codex.

Y si quieres generar la interfaz de un programa que no está, como plugin dentro de Claude Code:

/plugin marketplace add HKUDS/CLI-Anything
/plugin install cli-anything
/cli-anything ./ruta-del-programa

Un aviso sobre esta última: generar una interfaz completa para un programa grande no es una tarea de dos minutos. Es un proceso largo, consume bastantes tokens y conviene lanzarlo sabiendo lo que va a costar. Lo cuento porque el README no lo pone en negrita y la factura sí.

En Windows hace falta Git para Windows o WSL, porque el proyecto asume un entorno tipo Unix.

Dónde esto cambia algo de verdad

Los casos que se me ocurren mirando a mis clientes:

  • Lotes de imágenes. Recortar, redimensionar, quitar fondos y exportar cuatrocientas fotos de producto o de casos clínicos con GIMP, sin abrir GIMP.
  • Documentos en cadena. Generar cien PDF desde una plantilla de LibreOffice con datos de una hoja de cálculo, que es exactamente el trabajo que hace alguien un viernes por la tarde.
  • Vídeo repetitivo. Cortar, subtitular y exportar clips con Kdenlive o Shotcut siguiendo siempre el mismo patrón.
  • Datos y mapas. QGIS y OpenRefine manejados desde el agente, que es donde la curva de aprendizaje de esos programas se come semanas.

En todos ellos el patrón es el mismo: tarea repetida, mismo programa, mismo criterio. Cuando la tarea es creativa y cada caso es distinto, esto no aporta nada.

Cuándo no te compensa

  • Si el programa que usas es de pago y cerrado. El catálogo va sobre todo de software abierto. Tu programa de gestión de la clínica o tu suite de contabilidad no están, y su código tampoco.
  • Si es una tarea que haces dos veces al año. El tiempo de montarlo no se recupera.
  • Si no tienes el programa instalado. La interfaz no reemplaza al programa, lo conduce.
  • Si trabajas en Windows sin WSL y no te apetece montarlo. Se puede, pero hay fricción.
  • Si buscas algo con interfaz gráfica. Aquí todo es terminal, por diseño.

Para quién sí: para quien tiene un cuello de botella claro con un programa de escritorio concreto y hace la misma operación decenas de veces. Ahí esto no es una curiosidad, es una tarde de trabajo que se convierte en una orden.

Newsletter Semanal

Inteligencia Artificial aplicada a negocio

Sin humo. Solo experimentos reales, prompts que funcionan y estrategias de escalabilidad.

Preguntas frecuentes

¿Sirve para cualquier programa?

Para los más de 40 del catálogo, directamente. Para otros, puede generarles una interfaz si tiene acceso a su código, lo que en la práctica lo limita al software abierto.

¿Necesito saber programar?

Para instalar y usar una interfaz del catálogo, no: son tres órdenes y luego le hablas al agente. Para generar una nueva conviene entender qué está pasando.

¿Sustituye al programa?

No. Lo conduce. Blender sigue renderizando y LibreOffice sigue generando los PDF; lo que cambia es quién le da las órdenes.

¿Funciona en Windows?

Sí, pero necesitas Git para Windows o WSL porque el proyecto asume un entorno tipo Unix.

¿Es gratis?

Sí, licencia Apache 2.0. El coste real es el consumo de tokens del agente, sobre todo si generas interfaces nuevas.

Analizo los repos que entran en tendencia y cómo sacarles partido con Claude Code y Codex. Ver todos los repos analizados.