# install

> Instalar los agentes, habilidades, archivos de instrucciones y la configuración de BMAD+ en un proyecto: cada opción, qué se escribe, cómo actúa una reinstalación, salida real y errores posibles.

Canonical: https://bmad-plus.rochetta.fr/es/docs/reference/cli-install/
Language: es
BMAD+ version: 0.23.1
Documentation reviewed: 2026-10-19
Author: Laurent Rochetta
License: MIT

Documentación de BMAD+ › [Referencia](https://bmad-plus.rochetta.fr/es/docs/reference/) › install

`install` es el comando que coloca BMAD+ en un proyecto. Copia los agentes y habilidades de los packs que elijas, escribe los archivos de instrucciones que leen tus asistentes de IA, crea la configuración y registra un manifiesto de todo lo que posee para que `update`, `doctor` y `uninstall` puedan actuar después con seguridad. Ejecútalo una vez por proyecto, y de nuevo cuando quieras añadir un pack o una herramienta.

<a id="synopsis"></a>
## Sinopsis

**En la terminal de tu proyecto**

```sh
npx bmad-plus install [-d <path>] [-p <packs>] [-y] [-l <code>] [--tools <tools>] [--mode <mode>] [--provision-python]
```

**Opciones de install**

| Opción | Argumento | Por defecto | Qué hace |
| --- | --- | --- | --- |
| `-d, --directory <path>` | carpeta | carpeta actual | Proyecto en el que instalar. |
| `-p, --packs <packs>` | lista separada por comas | se pregunta en interactivo | Identificadores de packs: `core`, `osint`, `maker`, `shield`, `seo`, `memory`, `dev-studio`, `backup`, `animated`, `design`, o `all` (todos), o `none`. Core siempre se instala. Un identificador desconocido es un error. |
| `-y, --yes` | - | desactivado | Aceptar todos los valores por defecto y omitir las preguntas. Obligatorio si no hay terminal. |
| `-l, --lang <code>` | código de idioma | se pregunta, o `en` con `--yes` | Idioma de las pantallas del instalador: `en`, `fr`, `es`, `de`, `pt-br`, `ru`, `zh`, `he`, `ja`, `it`. |
| `--tools <tools>` | lista separada por comas | detección automática | Para qué asistentes escribir archivos de instrucciones: identificadores (`claude-code`, `gemini-cli`, `antigravity`, `cursor`, `codex-cli`, `opencode`, `aider`), `all`, o `none` / `skip` para no tocar la configuración de las herramientas. |
| `--mode <mode>` | `manual`, `autopilot`, `hybrid` | valor existente, si no `manual` | Modo de ejecución escrito en `_bmad/config.yaml`. Un valor explícito sustituye al existente. |
| `--provision-python` | - | desactivado | Crear un entorno Python aislado en `.bmad/venv/<pack>/` para los packs que lo necesitan (hoy: SEO). Nunca se ejecuta si no se pide. |

<a id="wizard"></a>
## El asistente interactivo

Sin `--yes`, el instalador hace las preguntas de abajo, en este orden. Las preguntas de idioma, packs y herramientas se omiten si diste `--lang`, `--packs` o `--tools`; el nombre, el idioma de comunicación, el entorno de pruebas y el modo de ejecución se preguntan siempre. Core siempre está incluido en la lista de packs, y los packs ya instalados aparecen preseleccionados.

1. **Idioma** El idioma del instalador (ver la visión general de la CLI). Se omite si das `--lang`.
2. **Packs** Una selección múltiple de los packs opcionales. Se omite si das `--packs`.
3. **Herramientas** Solo se pregunta si no se detectó ninguna herramienta de IA en la carpeta y no das `--tools`.
4. **Nombre** Tu nombre de pila; los agentes lo usan para saludarte. Por defecto, la configuración existente y luego el nombre de usuario del sistema.
5. **Idioma de comunicación** El idioma en que responden los agentes. Se escribe en la configuración.
6. **Entorno de pruebas** La URL de un entorno de pruebas para las recetas de aceptación humana; déjala en blanco si no tienes.
7. **Modo de ejecución** `manual` (tú llamas a los agentes), `autopilot` (Nexus lleva el pipeline) o `hybrid` (autopilot con puntos de control frecuentes). Siempre se pregunta. Un valor de `--mode` prevalece sobre tu respuesta.

Con `--yes` no se pregunta nada: el nombre sale de la configuración existente o del usuario del sistema, el idioma de comunicación de la configuración existente, de `--lang` o del idioma del sistema, y el modo de `--mode`, de la configuración existente o de `manual`. Una instalación desatendida nunca sustituye un ajuste que ya existe.

<a id="reads-writes"></a>
## Qué lee y qué escribe

El comando lista primero cada archivo de cada pack seleccionado. Si alguno no se puede listar (por ejemplo, las habilidades externas del pack Design no coinciden con la versión fijada), se detiene antes de escribir nada. Después toma un bloqueo de proyecto, escribe los archivos de forma atómica y termina con el manifiesto. No abre ninguna conexión de red por sí mismo; la única excepción es `--provision-python`, que pide a un instalador de Python (`uv`, con `pipx` o `pip` de reserva) que obtenga los requisitos del pack.

**Archivos y carpetas que escribe install**

| Ruta | Qué es |
| --- | --- |
| `.agents/skills/` | Agentes, habilidades y carpetas de pack de los packs seleccionados. |
| `.agents/data/` | Datos compartidos, en particular `role-triggers.yaml` (activación automática de roles). |
| `_bmad/module.yaml`, `_bmad/module-help.csv` | Descripción del módulo e índice de ayuda. |
| `_bmad/config.yaml` | La configuración de tu proyecto. Se crea, o se fusiona conservando las claves existentes. |
| `_bmad/.bmad-plus-install.json` | El manifiesto: versión, packs, herramientas, huellas de los adaptadores, inventario de archivos propios, modo, usuario e idioma. |
| `AGENTS.md` y archivos de herramienta | Archivos de instrucciones de las herramientas seleccionadas (ver la página de adaptadores). No se escriben con `--tools none`. |
| `_bmad-output/discovery/`, `_bmad-output/build/`, `docs/` | Carpetas de salida vacías donde escriben los agentes. |
| `.agents/memory/`, `~/.bmad-plus/brain` | Con el pack Memory: archivos de memoria del proyecto y, si hace falta, un cerebro global. Un fallo aquí es un aviso, no un error. |
| `.bmad/venv/<pack>/` | Solo con `--provision-python`. |
| `.bmad/update.lock` | Se mantiene mientras corre el comando y después se elimina. |

> **Nota · Tu .gitignore es tuyo** El instalador no edita `.gitignore`. Que las carpetas instaladas aparezcan en `git status` depende de tus propias reglas de exclusión. En la receta registrada el proyecto de demostración ya las ignoraba, así que `git status --short` quedó vacío.

<a id="re-running"></a>
## Volver a ejecutarlo

- Misma versión: solo se añaden los packs, herramientas y archivos que faltan. Los packs y herramientas que la instalación ya posee se conservan y se refrescan.
- Los archivos que cambiaste, o que no constan como de BMAD+, se conservan con un aviso (`<file>: locally changed or unowned content preserved.`).
- Tus propios archivos de instrucciones (`CLAUDE.md`, `GEMINI.md`, etc.): una instalación interactiva los conserva y avisa; con `--yes` se copian antes a `<file>.bak` (numerado si hace falta) y luego se sustituyen por el archivo de BMAD+. Un archivo de BMAD+ que hayas editado siempre se conserva. Los archivos antiguos de BMAD+ sin huellas de propiedad se guardan antes como `<file>.bak`.
- `_bmad/config.yaml` se fusiona: las claves existentes ganan, se añaden los valores por defecto que faltan, y las respuestas dadas explícitamente en el asistente (o `--mode`) sustituyen al valor anterior. Si el archivo no se puede analizar, queda intacto, con un aviso.
- Una versión distinta se rechaza. Usa `update`: planifica el cambio, hace copias de seguridad y registra un recibo.
- Un manifiesto ilegible se copia antes a `_bmad/.bmad-plus-install.json.corrupt.bak` (numerado si ya existe) y luego se sustituye.

<a id="exit-codes"></a>
## Códigos de salida

**Códigos de salida de install**

| Código | Significado |
| --- | --- |
| 0 | Instalado, o nada más que añadir. |
| 1 | Sin terminal y sin `--yes`; conflicto de versión; pack, herramienta o modo desconocido; un pack que no se puede listar; un bloqueo en manos de otra instalación o actualización; una pregunta cancelada. |

<a id="real-output"></a>
## Salida real

Esta es la instalación registrada de los packs Core y Design para Claude Code, en francés (`--lang fr`), de la receta de aceptación humana de la 0.23.0. La línea «5 agents, 9 habilidades, 4 fichiers copiés» cuenta carpetas de agentes, carpetas de habilidades y otros archivos copiados. El recuadro termina con la guía de inicio; sus líneas de ejemplo dependen de los packs elegidos (aquí la línea de Design).

**Instalación desatendida, Core + Design, Claude Code**

```text
$ npx bmad-plus install --yes --lang fr --packs core,design --tools claude-code --directory .\demo-app
T   BMAD+ Installer v0.23.0
|
•  ✨ Created by Laurent Rochetta — github.com/lrochetta/BMAD-PLUS
|
•  Installation dans: C:\Users\you\demo-app
|
*  Packs sélectionnés: ⚙️ Core, 🎨 Design
|
•  IDE détectés: Claude Code
|
o  ✅ 5 agents, 9 skills, 4 fichiers copiés
|
o  ✅ 1 IDE configuré(s)
|
o  ✅ Installation terminée — Comment commencer -------------------------------+
|                                                                              |
|  💬 À qui parler ?                                                           |
|                                                                              |
|    Discuter d'une idée          →  "Atlas, [...]"                            |
|    Créer un PRD                 →  "Atlas, create PRD"                       |
|    Architecture technique       →  "Forge, propose architecture"             |
|    Implémenter du code          →  "Forge, implement story [X]"              |
|    Tester / code review         →  "Sentinel, review module [X]"             |
|    Planifier un sprint          →  "Nexus, create epics"                     |
|    Tout automatiser             →  "autopilot"                               |
|    Design avec Atelier          →  "/design read"                            |
|                                                                              |
|  📦 Commandes CLI:                                                           |
|    npx bmad-plus install    — Installer agents & skills                      |
|    npx bmad-plus update     — Mettre à jour (conserve la config)             |
|    npx bmad-plus doctor     — Vérifier l'installation                        |
|    npx bmad-plus uninstall  — Supprimer BMAD+ du projet                      |
|                                                                              |
|  💡 Exemples rapides:                                                        |
|    🎨 Design : "/design read" → Atelier vous interroge, puis construit       |
|                                                                              |
+------------------------------------------------------------------------------+
|
—  BMAD+ est prêt ! Parle à Atlas pour commencer 🚀
```

Salida capturada de una ejecución real. Fuente: Capturado durante la receta de aceptación de la 0.23.0, el 2026-10-18 (paso 1; líneas npm notice eliminadas; el recuadro de inicio rápido está abreviado (se omiten las líneas del workflow y de la carpeta de salida))

<a id="errors"></a>
## Errores y qué hacer

**Mensajes de install**

| Mensaje | Causa | Qué hacer |
| --- | --- | --- |
| `This command requires a terminal. Run ...` | La entrada no es una terminal (script, CI, tubería) y falta `--yes`. | Añade `--yes` y, si quieres adaptadores, `--tools <ids>`. |
| `BMAD+: Unknown pack ID(s): x. Available: core, osint, maker, shield, seo, memory, dev-studio, backup, animated, design, all.` | Un identificador de pack de `--packs` está mal escrito. | Usa uno de los identificadores listados. |
| `BMAD+: Unknown tool ID(s): x. Available: claude-code, gemini-cli, antigravity, cursor, codex-cli, opencode, aider, all, none.` | Un identificador de herramienta de `--tools` está mal escrito. | Usa uno de los identificadores listados. |
| `BMAD+: Unknown execution mode: x` | `--mode` no es `manual`, `autopilot` ni `hybrid`. | Elige uno de los tres. |
| `BMAD+ v0.22.0 is installed; this package is v0.23.0. Run `bmad-plus update` first ...` | El proyecto tiene otra versión distinta del paquete que ejecutas. | Ejecuta `update` y luego `install` para añadir packs o herramientas. |
| `Downgrade refused: BMAD+ vX is installed and this package is vY.` | El paquete que ejecutas es más antiguo que la instalación. | Ejecuta un paquete más nuevo: `npx bmad-plus@latest install`. |
| `Another update is in progress: <path>.` | Otra instalación o actualización tiene `.bmad/update.lock`. | Espera. Si se interrumpió, `doctor` indica cuándo el bloqueo queda obsoleto y qué archivo borrar. |
| `<file>: existing project instructions preserved.` | Ya tienes ese archivo de instrucciones y no es de BMAD+ (instalación interactiva), o editaste el archivo de BMAD+. | No se rompe nada: el archivo eje `AGENTS.md` lleva las instrucciones comunes. Fusiona a mano, o aparta tu archivo y vuelve a ejecutar. Con `--yes` tu archivo se habría guardado como `<file>.bak` y sustituido. |
| `External module design-skill is X but this BMAD+ expects exactly Y; reinstall bmad-plus so its pinned dependency matches.` | Las habilidades externas del pack Design no coinciden con la versión que fija esta versión. | Reinstala el paquete (`npm install` o `npx bmad-plus@<version>`). El proyecto no se tocó. |
| `Installation changed while preparing install. Please retry.` | Otro proceso cambió el manifiesto durante la comprobación previa. | Vuelve a ejecutar el comando. |
| `_bmad/config.yaml could not be parsed; it was left unchanged.` | El archivo no es YAML válido. | Corrige el archivo y vuelve a ejecutar para fusionar los valores por defecto. |
| `Memory/brain initialization failed (non-fatal, install continues): ...` | La carpeta personal es de solo lectura o no existe (contenedor, CI). | Se puede ignorar; define `BMAD_PLUS_BRAIN` apuntando a una carpeta escribible si quieres el cerebro global. |

<a id="examples"></a>
## Ejemplos

**En interactivo, lo habitual**

```sh
npx bmad-plus@0.23.0 install
```

**Desatendido, dos packs, un asistente**

```sh
npx bmad-plus install --packs core,design --tools claude-code --yes --lang fr
```

**Todo, para todos los asistentes**

```sh
npx bmad-plus install --packs all --tools all --yes
```

**Solo agentes y habilidades, sin tocar ningún archivo de instrucciones**

```sh
npx bmad-plus install --tools none --yes
```

**Pack SEO con su entorno Python**

```sh
npx bmad-plus install --packs seo --provision-python
```

**Véase también**

- [Visión general de la CLI](https://bmad-plus.rochetta.fr/es/docs/reference/cli-overview/)
- [Comprobar el resultado con doctor](https://bmad-plus.rochetta.fr/es/docs/reference/cli-doctor/)
- [Pasar a una versión más reciente](https://bmad-plus.rochetta.fr/es/docs/reference/cli-update/)
- [Adaptadores e identificadores de herramientas](https://bmad-plus.rochetta.fr/es/docs/reference/adapters/)
- [La configuración escrita](https://bmad-plus.rochetta.fr/es/docs/reference/config-yaml/)
- [El ciclo completo](https://bmad-plus.rochetta.fr/es/docs/guides/install-lifecycle/)
- [Solución de problemas](https://bmad-plus.rochetta.fr/es/docs/faq/troubleshooting/)

[Documentación de BMAD+](https://bmad-plus.rochetta.fr/es/docs/) · [Referencia](https://bmad-plus.rochetta.fr/es/docs/reference/)

[Código en GitHub](https://github.com/lrochetta/BMAD-PLUS)
