Inteligencia Artificial

Plugins de Claude Code: empaqueta y comparte tu setup

Autorangel cruz
Publicado
Lectura3 min de lectura
Plugins de Claude Code: empaqueta y comparte tu setup

Un plugin de Claude Code es un paquete que agrupa skills, subagentes, hooks y servidores MCP en algo instalable, versionable y compartible. Es el paso natural cuando tu configuración deja de ser personal y quieres reusarla en varios proyectos o repartirla a tu equipo.

Standalone vs plugin

Hay dos formas de extender Claude Code:

  • Standalone (carpeta .claude/): ideal para flujos personales y de un solo proyecto. Nombres cortos (/deploy). Rápido para experimentar.
  • Plugin (carpeta autocontenida con un manifiesto): ideal para compartir, versionar y reusar entre proyectos. Los comandos quedan con namespace (/mi-plugin:deploy), lo que evita conflictos cuando tienes varios instalados.

Regla práctica: empieza standalone en .claude/ y, cuando algo te sirva y quieras compartirlo, lo conviertes en plugin.

Por qué te importa (el caso de equipo)

El valor real del plugin aparece en equipo. Imagina un plugin interno para tu equipo Laravel que trae, todo junto: la skill de "revisar PR" con pint y php artisan test, un hook que formatea al guardar, un subagente de revisión y el servidor MCP de tu base de datos. Cada persona nueva hace una instalación y arranca con el mismo setup, sin copiar carpetas a mano. Eso es lo que un plugin resuelve: configuración reproducible.

Qué empaqueta un plugin

Un plugin puede incluir, cada uno en su carpeta en la raíz del plugin:

Carpeta / archivo Contenido
skills/ Skills (<nombre>/SKILL.md)
agents/ Subagentes
hooks/ Hooks (hooks.json)
.mcp.json Servidores MCP
.claude-plugin/ El manifiesto plugin.json

También puede traer servidores LSP y monitors. Ojo con el error más común: solo plugin.json va dentro de .claude-plugin/; el resto de carpetas (skills/, agents/, hooks/) van en la raíz del plugin, no dentro de .claude-plugin/.

Crear un plugin

El manifiesto vive en .claude-plugin/plugin.json. El mínimo real son dos campos, name y description:

{
  "name": "mi-plugin",
  "description": "El setup de Claude Code de mi equipo"
}

version es opcional, pero conviene ponerlo en cuanto lo compartas (así puedes versionar los cambios). El name es el namespace de los comandos. Para probarlo en local sin instalar nada, lánzalo con el flag de desarrollo:

claude --plugin-dir ./mi-plugin

claude plugin init mi-tool te genera un esqueleto para empezar, y con /reload-plugins recargas los cambios sin reiniciar la sesión.

Instalar plugins

Con el comando /plugin gestionas e instalas plugins desde marketplaces. Anthropic mantiene dos públicos:

  • claude-plugins-official: curado por Anthropic, registrado automáticamente.
  • El marketplace comunitario: lo agregas con /plugin marketplace add anthropics/claude-plugins-community y luego instalas desde ahí.

Preguntas frecuentes

¿Qué es un plugin de Claude Code?

Un paquete autocontenido que agrupa skills, subagentes, hooks y servidores MCP (y más) para instalarlo, versionarlo y compartirlo entre proyectos o con tu equipo.

¿Standalone o plugin?

Standalone (.claude/) para lo personal y de un proyecto; plugin para compartir, versionar y reusar. Suele empezarse standalone y convertir a plugin al querer distribuir.

¿Qué campos lleva el manifiesto de un plugin?

Como mínimo name y description en .claude-plugin/plugin.json. version es opcional, pero recomendable en cuanto lo compartas.

¿Cómo instalo un plugin?

Con el comando /plugin, desde un marketplace. El oficial (claude-plugins-official) viene registrado; el comunitario lo agregas con /plugin marketplace add anthropics/claude-plugins-community.

¿Cómo creo y pruebo uno?

Crea .claude-plugin/plugin.json con name y description, agrega tus skills/, agents/ o hooks/ en la raíz del plugin, y pruébalo en local con claude --plugin-dir ./mi-plugin.