Saltar al contenido principal
Índice

Opensource · 2026

skillbase

CLI para gestionar skills de agentes de IA: instalá solo las habilidades relevantes por proyecto.

Stack
Node.js · JavaScript · esbuild · CLI · npm
01

Contexto

En el desarrollo asistido por Inteligencia Artificial, las skills personalizadas pueden gestionarse de tres formas:
  1. Directorio global: el agente lee todas las skills en cada interacción, saturando el contexto con instrucciones irrelevantes para el proyecto actual.
  2. A nivel de proyecto: el contexto se mantiene limpio, pero las skills quedan encapsuladas en un solo workspace, dificultando su reutilización y organización entre proyectos.
  3. Descarga desde remotos: cada vez que se necesita una skill hay que revisar manualmente el código importado, sin posibilidad de personalizarla al propio flujo de trabajo.
02

Motivación

Skillbase surgió al trabajar en proyectos con tecnologías muy distintas. Las skills de React, Rust, Go y Python terminaban todas revueltas en el mismo lugar, y cada vez que cambiaba de proyecto el agente recibía instrucciones que no venían al caso. Me llevaba el doble revisar sus sugerencias. Para colmo, cuando necesitaba una skill nueva la tenía que buscar en internet, revisar el código línea por línea para ver si hacía lo que necesitaba, y si quería adaptarla terminaba con versiones modificadas inconsistentes entre proyectos. No había forma de mantener mis skills organizadas, reutilizables y sincronizadas.

03

Qué hice

Diseñé e implementé un CLI para gestionar skills de forma local y cómoda. Las skills se almacenan en un directorio .skillbase/ invisible para el agente de IA, funcionando como un repositorio central desde donde se organizan, versionan y vinculan con los proyectos que las necesitan:
  • Vinculación por proyecto (add, install): conecta una skill desde .skillbase/ hacia .agents/skills/ del proyecto, mediante copia o enlace simbólico (-s). Cada workspace expone solo las skills que necesita, sin saturar su contexto, y las skills originales permanecen centralizadas en el registro.
  • Importación desde remotos (-r): trae skills desde repositorios directamente al registro local, evitando descargar la misma skill repetitivamente desde múltiples fuentes y permitiendo revisar el código una sola vez.
  • Detección y migración (init, migrate): init analiza las tecnologías del proyecto y sugiere skills afines. migrate traslada skills existentes desde .agents/ al registro .skillbase/ y permite promover skills al catálogo global con -p.
  • Gestión del catálogo (ls, check, update, remove): lista las skills disponibles, verifica actualizaciones, actualiza skills individuales o todas, y elimina las que ya no se usan.
  • Internacionalización (lang): adapta todos los mensajes, errores y ayudas al idioma del usuario (español o inglés) según el locale del sistema.

La implementación priorizó la ausencia de dependencias externas y la portabilidad, utilizando exclusivamente módulos nativos de Node.js y empaquetando el código con esbuild en un único archivo ejecutable ESM, lo que garantiza una instalación global ligera y rápida desde npm.