⏱️ Lectura: 10 min

Superpowers convierte a los agentes de código en colaboradores disciplinados mediante skills componibles y TDD estricto.

Introducción

El auge de los agentes de código autónomos ha transformado la manera en que escribimos software. Herramientas como Claude Code, Cursor, OpenAI Codex CLI y Gemini CLI ofrecen asistencia a un nivel que hace apenas dos años parecía ciencia ficción. Sin embargo, cualquiera que haya dejado a un agente trabajar sin supervisión durante una hora conoce el problema: el agente arranca rápido, pero termina desviándose del plan, reinventando lo que ya existe, saltándose las pruebas, sobreingenierizando soluciones triviales y dejando detrás archivos huérfanos. La velocidad inicial se diluye en horas de revisión manual y reverts.

📑 En este artículo
  1. Introducción
  2. Qué es Superpowers
  3. Instalación
    1. Windows
    2. macOS
    3. Linux
  4. Uso básico
  5. Integración en proyectos reales
  6. Cuándo usarlo y cuándo no
  7. Alternativas
  8. Conclusión
  9. Referencias
    1. 📚 Artículos relacionados

Jesse Vincent, ingeniero detrás de Prime Radiant y autor del blog blog.fsck.com, se propuso responder a ese problema con un enfoque distinto. En lugar de construir otro asistente con prompts ingeniosos, publicó en GitHub un conjunto de skills componibles e instrucciones iniciales que disciplinan al agente antes de que escriba una sola línea de código. El proyecto se llama Superpowers y reúne una metodología de desarrollo completa sobre la cual los agentes pueden operar con menos fricción, menos alucinaciones y más adherencia a prácticas probadas como TDD, YAGNI y DRY. El repositorio oficial vive en obra/superpowers, está licenciado bajo MIT y soporta casi todos los agentes de código populares del mercado en 2026.

Qué es Superpowers

Superpowers no es un agente, ni un modelo, ni una extensión específica de IDE. Es una librería de skills declarativos (en archivos SKILL.md) más una metodología de desarrollo que se instala como plugin sobre el agente de tu preferencia. Esos skills se disparan automáticamente según el contexto de la conversación: cuando el agente detecta que vas a construir algo nuevo, en lugar de saltar a escribir código, activa el skill brainstorming y te hace preguntas hasta extraer una especificación. Cuando hay una especificación aprobada, activa writing-plans y descompone el trabajo en tareas de 2 a 5 minutos con rutas de archivos exactas, código completo y pasos de verificación. Cuando el plan está listo, el skill subagent-driven-development despacha un subagente fresco por cada tarea con revisión de dos etapas: primero cumplimiento del spec, después calidad del código.

La filosofía detrás del proyecto es clara: proceso sobre improvisación, evidencia sobre afirmaciones, simplicidad como objetivo primario. El ciclo de TDD es el corazón: RED-GREEN-REFACTOR estricto, con skills que incluso detectan y eliminan código escrito antes de las pruebas. Para los desarrolladores LATAM que llevamos años escuchando hablar de TDD y casi nunca lo aplicamos por presión de entrega, tener un agente que se niega a avanzar sin una prueba que falle primero es refrescante y, admitámoslo, un poco molesto al principio.

En términos técnicos, Superpowers se distribuye como un paquete con versión 5.0.7 al cierre de esta edición, escrito principalmente en Shell para los hooks de activación y en Markdown estructurado para los skills. El paquete principal, .opencode/plugins/superpowers.js, contiene el loader para OpenCode; los demás agentes lo consumen a través de marketplaces oficiales.

Instalación

Superpowers se instala como plugin en el agente de código que ya uses. La sintaxis del comando interno de cada agente es la misma en Windows, macOS y Linux, pero los prerrequisitos (instalar el CLI del agente, git, node) sí varían por sistema operativo. Los siguientes bloques muestran cómo preparar el entorno y luego instalar Superpowers en Claude Code, el agente con mejor integración.

Windows

En Windows se recomienda trabajar dentro de WSL2 porque varios skills ejecutan scripts Bash. Con winget instalas Node y Git, después el CLI oficial de Claude Code:

winget install OpenJS.NodeJS.LTS
winget install Git.Git
npm install -g @anthropic-ai/claude-code

claude
# Dentro de la sesión de Claude Code:
/plugin install superpowers@claude-plugins-official

macOS

En macOS el camino más limpio es Homebrew:

brew install node git
npm install -g @anthropic-ai/claude-code

claude
# Dentro de la sesión de Claude Code:
/plugin install superpowers@claude-plugins-official

Linux

En distros Debian/Ubuntu:

sudo apt update
sudo apt install -y nodejs npm git
sudo npm install -g @anthropic-ai/claude-code

claude
# Dentro de la sesión de Claude Code:
/plugin install superpowers@claude-plugins-official

Si usás otro agente, Superpowers también tiene integraciones oficiales. En OpenAI Codex CLI ejecutás /plugins, buscás superpowers y seleccionás Install Plugin. En Cursor Agent chat corrés /add-plugin superpowers. En Gemini CLI un único comando hace todo:

gemini extensions install https://github.com/obra/superpowers
gemini extensions update superpowers

Para GitHub Copilot CLI el flujo es por marketplace:

copilot plugin marketplace add obra/superpowers-marketplace
copilot plugin install superpowers@superpowers-marketplace

Uso básico

Una vez instalado, no hay que invocar nada explícitamente: los skills se activan por contexto. El ejemplo mínimo es pedirle al agente algo vago y observar cómo cambia el comportamiento. Supongamos que abrís una sesión limpia y escribís:

quiero un script que descargue todos los PDFs de una página web y los guarde con nombres únicos

Sin Superpowers, la mayoría de agentes arranca a escribir Python con requests y BeautifulSoup en diez segundos. Con Superpowers activo, lo primero que pasa es que se dispara el skill brainstorming y el agente responde con algo parecido a esto:

Antes de escribir código necesito aclarar algunas cosas:

1. ¿La página requiere autenticación o es pública?
2. ¿Los PDFs están enlazados directamente o detrás de JavaScript?
3. ¿Qué hacemos con duplicados? ¿Hash de contenido o nombre?
4. ¿Dónde se guardan los archivos? ¿Hay límite de tamaño?
5. ¿Runtime objetivo: un cron local, una Lambda, un Docker?

Cuando tengas respuestas redacto un DESIGN.md y lo revisamos por secciones.

Después de responder, el agente genera un documento de diseño en secciones cortas, cada una con su checkpoint de aprobación. Solo cuando das luz verde pasa al plan de implementación, y solo cuando el plan está aprobado empieza a tocar código, siempre escribiendo primero una prueba que falla.

Integración en proyectos reales

Donde Superpowers se gana su lugar es en proyectos de medio porte con varios contribuyentes, donde la consistencia vale más que la velocidad. Un patrón común es combinarlo con Git worktrees para trabajar varias features en paralelo sin bloquearse. El skill using-git-worktrees se activa después de aprobar un diseño, crea un workspace aislado en una rama nueva, ejecuta el setup del proyecto y verifica que la base de tests pase limpia antes de tocar nada:

// En la terminal principal seguís con tu trabajo.
// En una segunda terminal abrís el worktree creado por el skill:
cd ../proyecto-feature-auth
npm test
# Todo verde. El subagente puede arrancar aquí sin contaminar tu rama.

Otro patrón habitual es el de subagent-driven-development con checkpoints humanos. El agente principal despacha un subagente por tarea con un prompt limpio, sin el ruido de la conversación anterior. Cada subagente completa una tarea pequeña, pasa por dos revisiones (una de cumplimiento del plan, otra de calidad del código) y solo entonces se integra. En una sesión típica de dos horas he visto al agente completar 18 tareas con 17 commits verdes, sin desviaciones del plan original, algo impensable sin disciplina explícita.

El flujo típico: brainstorming, plan, subagentes en paralelo, revisión de dos etapas, merge.

Para proyectos con CI estricto, el skill finishing-a-development-branch se encarga del cierre: corre toda la suite de pruebas, ofrece opciones (merge local, PR a GitHub, mantener la rama, descartarla), limpia el worktree y te deja la historia de Git ordenada. Es de esas cosas que uno empieza a dar por descontadas hasta que vuelve a un entorno sin ellas.

Cuándo usarlo y cuándo no

Superpowers brilla cuando el costo de un error es alto y el ciclo de iteración es largo: backends con tests de integración pesados, librerías que terceros consumen, refactors de bases de código grandes. En esos escenarios, la disciplina forzada de TDD y los planes descompuestos en tareas pequeñas te ahorran horas de depuración posterior. También es útil para equipos donde varios desarrolladores trabajan con agentes distintos y se necesita un piso común de prácticas.

No tiene sentido usarlo para prototipos desechables, scripts de una sola ejecución o exploraciones creativas donde lo valioso es iterar rápido y tirar a la basura el 80% de lo que se genera. Ahí el overhead de brainstorming y planes te frena más de lo que te ayuda. Tampoco es buena idea si no estás dispuesto a seguir TDD: el agente se negará a avanzar sin pruebas fallando primero y la fricción será constante.

Un detalle importante: los skills fuerzan patrones, pero no garantizan buen juicio arquitectónico. El agente va a seguir el plan que vos aprobaste; si el plan es malo, el resultado será un desastre disciplinado. La revisión humana de los documentos de diseño sigue siendo insustituible.

Alternativas

Existen otros enfoques para disciplinar agentes de código, cada uno con filosofía distinta. Cursor Rules permite definir reglas en archivos .cursorrules que el agente consulta siempre; es más liviano, pero no tiene el concepto de skills activables por contexto ni la metodología de subagentes. Aider es una CLI open source con conventions files y commits automáticos por cambio; su fuerte es el loop rápido de edición y prueba, pero carece de un framework explícito de brainstorming y planning. Continue ofrece un sistema de slash commands personalizados y context providers, útil para integrar documentación interna, aunque sin la estructura multistep de Superpowers.

La diferencia central es que Superpowers piensa en fases del desarrollo (diseño, plan, ejecución, revisión, cierre) y asigna un skill dedicado a cada una, mientras que las alternativas suelen ofrecer reglas globales o comandos puntuales. Cuál conviene depende de si valorás más la flexibilidad (Cursor, Aider) o la disciplina (Superpowers).

Conclusión

Superpowers es una respuesta pragmática a un problema concreto: los agentes de código son potentes pero indisciplinados, y la disciplina no se improvisa con mejores prompts sino con procesos explícitos. Jesse Vincent tomó décadas de buenas prácticas (TDD, YAGNI, revisiones por pares, commits pequeños) y las convirtió en skills que cualquier agente moderno puede consumir. El resultado es un workflow que recuerda más a trabajar con un colega senior meticuloso que con un becario apurado.

Si estás escribiendo software en producción con ayuda de un agente, vale la pena probarlo por una semana y observar qué cambia. En el peor de los casos desinstalás el plugin y seguís como antes; en el mejor, te encontrás entregando código más limpio sin que el proceso te consuma más tiempo. El repositorio está en Repositorio oficial en GitHub, la licencia es MIT y la comunidad responde en Discord.

Referencias

📱 ¿Te gusta este contenido? Únete a nuestro canal de Telegram @programacion donde publicamos a diario lo más relevante de tecnología, IA y desarrollo. Resúmenes rápidos, contenido fresco todos los días.


Andrés Morales

Desarrollador e investigador en inteligencia artificial. Escribe sobre modelos de lenguaje, frameworks, herramientas para devs y lanzamientos open source. Cubre papers de ML, ecosistema de startups tech y tendencias de programación.

0 Comentarios

Deja un comentario

Marcador de posición del avatar

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.