Introducción a Goose, el agente de IA en tu máquina
Introducción
En enero de 2025, Block presentó Goose, un agente de IA extensible. de código abierto. distribuido como una interfaz de línea de comandos (CLI) y una aplicación de escritorio. Goose se ejecuta localmente, se puede conectar a diferentes proveedores de modelos de lenguaje grandes LLM y es extensible a través de servidores Model Context Protocol (MCP).
En este artículo, te guiaré a través de la configuración de Goose CLI en Linux, conectándolo a Groq y extendiendo sus capacidades utilizando un servidor MCP.
Configuración de Goose CLI
El CLI de Goose es una herramienta ligera que te permite interactuar directamente con Goose desde tu terminal. Prefiero usar el CLI porque proporciona una forma simple y eficiente de interactuar con el modelo de IA sin necesidad de una interfaz gráfica de usuario.
Primero, descarga e instala el CLI de Goose. La guía de inicio proporciona instrucciones de instalación para varios sistemas operativos.
Para Linux, instala la última versión de Goose usando:
curl -fsSL https://github.com/block/goose/releases/download/stable/download_cli.sh | bash
Este script descarga e instala la última versión de Goose para tu distribución.
Importante
Considera verificar la fuente y el checksum del script antes de ejecutarlo para seguir las mejores prácticas de seguridad.
Como alternativa, visita la página de GitHub releases para descargar el binario adecuado para tu sistema operativo.
Configuración del proveedor LLM (Groq)
A continuación, configura Goose para utilizar un proveedor LLM. En este caso, utilizaré Groq, un potente proveedor LLM que ofrece una amplia gama de modelos y capacidades y es conocido por su velocidad y eficiencia.
La arquitectura única de Unidad de Procesamiento de Lenguaje (LPU) de Groq ofrece un alto rendimiento con un consumo mínimo de energía, lo que lo hace ideal para tareas de IA en tiempo real.
Además, Groq ofrece una capa gratuita con límites bastante generosos, lo que permite a los desarrolladores experimentar sin incurrir en costes.
Para conectar Goose a Groq, debes crear una cuenta en el sitio web de Groq y obtener una API key. Puedes generar esta clave en la Groq cloud console:
Utilizaremos esta clave de API para configurar Goose y conectarlo a Groq estableciendo Groq como proveedor predeterminado. Puedes hacerlo ejecutando el siguiente comando:
goose configure
El comando goose configure
te guiará a través de la configuración del proveedor, incluyendo la introducción de tu clave de API y la selección del modelo predeterminado.
Si la configuración es exitosa, verás un mensaje de confirmación.
Si encuentras algún problema, verifica tu clave de API, la conexión a Internet o revisa las trazas en tu directorio ~/.config/goose
para obtener más información.
Con Groq configurado como nuestro proveedor LLM, ahora podemos explorar las capacidades de Goose ejecutando una nueva sesión de chat.
Ejecutar Goose por primera vez
Inicia una nueva sesión ejecutando el siguiente comando:
goose session
Este comando lanza una sesión de chat basada en terminal donde puedes interactuar con el LLM.
En la imagen anterior, puedes ver la sesión de Goose ejecutándose en la terminal. En este caso, le pedí al modelo que enumerara sus capacidades, y respondió con una lista de los comandos admitidos.
Configuración del servidor MCP de Puppeteer
Para demostrar la extensibilidad de Goose, configuremos el servidor MCP de Puppeteer.
Puedes hacerlo a través de la línea de comandos o editando tu archivo goose/config.yaml
.
Para este ejemplo, usaremos la línea de comandos:
goose configure
El CLI te pedirá que configures Goose:
This will update your existing config file
if you prefer, you can edit it directly at /home/user/.config/goose/config.yaml
┌ goose-configure
│
◆ What would you like to configure?
│ ○ Configure Providers (Change provider or update credentials)
│ ○ Toggle Extensions
│ ● Add Extension
└
Selecciona Add Extension
, elige Command-line Extension
e introduce los siguientes detalles para el servidor MCP de Puppeteer:
┌ goose-configure
│
◇ What would you like to configure?
│ Add Extension
│
◇ What type of extension would you like to add?