# Instalar, actualizar, desinstalar

> Toda la vida de BMAD+ en un proyecto: instalar, comprobar, actualizar con política y recibos, restaurar, desinstalar conservando tu memoria. Qué escribe y quita cada paso, y cómo actúa sin conexión.

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

Documentación de BMAD+ › [Guías](https://bmad-plus.rochetta.fr/es/docs/guides/) › Instalar, actualizar, desinstalar

BMAD+ vive dentro de tu proyecto, junto a tu código. Eso plantea tres preguntas razonables: cómo instalarlo sin que lo invada, cómo mantenerlo al día sin perder mis ediciones y cómo quitarlo sin perder mi trabajo. Esta página sigue una instalación desde el primer comando hasta el último y dice, en cada paso, qué se lee, qué se escribe y qué se quita. El principio es el mismo en todas partes: BMAD+ lleva la lista de los archivos que posee, con la huella de cada uno, y solo actúa sobre los que aún coinciden.

<a id="video-install-and-keep-memory"></a>
Video: [Instalar, actualizar, desinstalar y conservar la memoria](https://bmad-plus.rochetta.fr/media/install-and-keep-memory-en.mp4) — Un comando de instalación, una comprobación con doctor, actualizaciones que conservan tus cambios y una desinstalación que deja la memoria y la configuración en su sitio.
[Subtítulos (WebVTT)](https://bmad-plus.rochetta.fr/media/install-and-keep-memory-es.vtt)

Transcripción:

> Un solo comando desde la carpeta de tu proyecto, y eliges tus adaptadores y tus paquetes. El instalador escribe las instrucciones de los agentes, la columna compartida del proyecto y los adaptadores que seleccionaste. Después, doctor comprueba la instalación e indica cuántas verificaciones se superaron. Las actualizaciones conservan tus archivos personalizados: BMAD+ registra qué archivos gestiona. Una comprobación de versión solo mira. Las actualizaciones automáticas requieren una política explícita del proyecto. La desinstalación solo elimina los archivos que siguen coincidiendo con lo que se instaló. Tu memoria, tus modificaciones y tu configuración se quedan donde están. Nunca borra una carpeta de forma recursiva, así que los archivos ocultos y el contenido anidado sobreviven.

Transcripción con descripción visual:

- **0:00** En pantalla: Un tenue haz de luz atraviesa una bruma oscura y cae sobre un punto de una superficie oscura. Donde cae, finas líneas ámbar estallan en todas direcciones y se ramifican como pistas de un circuito. El rótulo, en inglés, dice «npx bmad-plus@0.23.0 install». Narración: Un solo comando desde la carpeta de tu proyecto, y eliges tus adaptadores y tus paquetes.
- **0:06** En pantalla: Una ventana de terminal titulada «~/app». Se escribe el comando npx bmad-plus install --lang en. El instalador pregunta «Which packs to install? (Core is always included)» y enumera los nueve packs opcionales; se elige Shield («Selected packs: Core, Shield»). Después «Which IDE are you using?» enumera siete herramientas — Claude Code, Gemini CLI, Antigravity, Cursor, Codex CLI, OpenCode y Aider — y se elige Claude Code. Siguen más líneas: «Detected IDEs: Claude Code», una pregunta por el nombre (Developer), el idioma de comunicación (English), una pregunta por la URL de un entorno de pruebas y el modo de ejecución («Manual — You call agents yourself»). La imagen se acerca a dos marcas verdes: «5 agents, 6 skills, 4 files copied», con «files copied» enmarcado en naranja, y «1 IDE(s) configured». Todo el texto del terminal está en inglés. Narración: El instalador escribe las instrucciones de los agentes, la columna compartida del proyecto y los adaptadores que seleccionaste.
- **0:17** En pantalla: Un terminal. Se escribe el comando bmad-plus doctor. La pantalla muestra «BMAD+ Doctor v0.23.0» y «Manifest found: v0.23.0», y después un «BMAD+ Health Report» cuya primera línea, «87/87 checks passed», aparece enmarcada en naranja. Debajo: «0 error(s), 0 warning(s)», «Installed: v0.23.0 | Executing CLI: v0.23.0» y «Ownership inventory: complete». La pantalla termina con una nota que indica que aquí no se comprueba la versión publicada (el comando bmad-plus update-check --json consulta npm) y con «Installation checks passed.» en verde. Todo el texto del terminal está en inglés. Narración: Después, doctor comprueba la instalación e indica cuántas verificaciones se superaron.
- **0:23** En pantalla: Un terminal. Primero se modifica un archivo gestionado: echo '# my notes' >> .agents/skills/agent-strategist/SKILL.md. Después bmad-plus update-check muestra «Installed: 0.22.0; running: 0.23.0; channel latest: 0.23.0» y «update-available: approval-required», con «update-available» enmarcado. Sigue bmad-plus update --yes: «BMAD+ Updater v0.23.0», «Installed: v0.22.0 → Executing package: v0.23.0» y «Planned changes: 12 files (0 no longer shipped, removed with backup); preserved conflicts: 1.» La imagen se acerca, y «SKILL.md: preserved» aparece enmarcado en la línea «.agents/skills/agent-strategist/SKILL.md: preserved (modified-managed-file).» La ejecución termina con «12 files updated; 1 local conflicts preserved.», la ruta de un recibo bajo .bmad/updates y «BMAD+ v0.23.0 applied partially. Reload your agent instructions or start a new session.» Todo el texto del terminal está en inglés. Narración: Las actualizaciones conservan tus archivos personalizados: BMAD+ registra qué archivos gestiona. Una comprobación de versión solo mira. Las actualizaciones automáticas requieren una política explícita del proyecto.
- **0:38** En pantalla: Un terminal. Se modifica el archivo raíz: echo '# my notes' >> AGENTS.md. Se escribe un archivo de memoria: mkdir -p .agents/memory && echo 'decision: keep it simple' > .agents/memory/decisions.md. Después bmad-plus uninstall --yes muestra «BMAD+ Uninstaller», «BMAD+ v0.23.0 (installed 2026-10-18)», «Selected packs: core, design» y «BMAD+ removed (105 items)», enmarcado. La línea siguiente dice «Project memory, settings, and unknown or modified files have been preserved», con «have been preserved» enmarcado. Por último, el comando ls AGENTS.md .agents/memory _bmad muestra AGENTS.md, luego decisions.md bajo .agents/memory y luego config.yaml bajo _bmad. El nombre config.yaml aparece enmarcado. Todo el texto del terminal está en inglés. Narración: La desinstalación solo elimina los archivos que siguen coincidiendo con lo que se instaló. Tu memoria, tus modificaciones y tu configuración se quedan donde están.
- **0:52** En pantalla: Una alta pila de finas láminas translúcidas se alza en la oscuridad. Una luz cálida crece en su interior, se intensifica, y las láminas se abren alrededor de un destello brillante. El rótulo, en inglés, dice «Nothing deleted recursively». Narración: Nunca borra una carpeta de forma recursiva, así que los archivos ocultos y el contenido anidado sobreviven.
- **0:59** En pantalla: Un cielo azul casi negro y apagado, con una tenue franja de luz en el horizonte. La dirección «bmad-plus.rochetta.fr» aparece en naranja y se desvanece.

<a id="the-path"></a>
## El recorrido en seis pasos

1. **Instalar** Copia agentes, habilidades y archivos de instrucciones, escribe la configuración y el manifiesto.

   ```sh
   npx bmad-plus install
   ```
2. **Comprobar** Un informe de salud de solo lectura: ¿están todos los archivos y sin cambios?

   ```sh
   npx --no-install bmad-plus doctor
   ```
3. **Buscar novedades** Preguntar a npm si hay una versión más reciente, sin aplicarla.

   ```sh
   npx --no-install bmad-plus update-check
   ```
4. **Fijar la política** Mantener el valor por defecto (avísame, yo decido), desactivar las consultas o permitir actualizaciones automáticas dentro de un rango de versiones.

   ```sh
   npx --no-install bmad-plus update-policy --mode notify
   ```
5. **Actualizar** Planificar, copiar, escribir, verificar, dejar un recibo. Se deshace con `--restore`.

   ```sh
   npx --no-install bmad-plus update --latest --yes
   ```
6. **Desinstalar** Quita solo lo que posee BMAD+; la memoria, los ajustes y tus ediciones se quedan.

   ```sh
   npx --no-install bmad-plus uninstall --yes
   ```

> **Advertencia · Los pasos 2 a 6 necesitan una copia local** El instalador no coloca `bmad-plus` en el `node_modules` de tu proyecto, así que `npx --no-install bmad-plus ...` falla justo después del paso 1 (`npx canceled due to missing packages and no YES option`). Añade el paquete una vez con `npm install --save-dev bmad-plus`, o ejecuta esos pasos como `npx bmad-plus ...`, que lo descarga cuando hace falta. Los archivos `CLAUDE.md` y `AGENTS.md` generados piden al asistente que ejecute `npx --no-install bmad-plus update-check`; sin copia local el comando no está disponible, y el asistente omite la comprobación de actualizaciones y continúa con tu tarea. Consulta la [visión general de la CLI](https://bmad-plus.rochetta.fr/es/docs/reference/cli-overview/).

<a id="ownership"></a>
## Cómo sabe BMAD+ qué es suyo

Todo descansa en un archivo escrito por `install`: `_bmad/.bmad-plus-install.json`, el manifiesto. Anota la versión, los packs, las herramientas, tu nombre e idioma, el modo de ejecución, un mapa `adapterHashes` (una huella por archivo de instrucciones) y un `fileInventory`: para cada archivo de agente, habilidad y datos que BMAD+ colocó, su huella SHA-256. Los finales de línea se normalizan antes de calcular la huella de los archivos de instrucciones, así que una copia de trabajo en Windows no parece una edición.

**Estados del inventario de propiedad que muestra doctor**

| Estado | Significado | Consecuencia |
| --- | --- | --- |
| `complete` | Cada archivo entregado está registrado. | Las actualizaciones pueden ser automáticas si la política lo permite. |
| `incomplete` | Algún archivo ya estaba allí, con contenido distinto, al instalar. | Esos archivos se tratan como tuyos. |
| `legacy` | Instalado antes de que existieran las huellas de propiedad. | Las actualizaciones copian antes los archivos originales de los packs; `--auto` rechaza. |
| `invalid` | El inventario está mal formado. | `doctor` informa de un error; repara el manifiesto o reinstala. |

<a id="each-step"></a>
## Qué lee, escribe y quita cada paso

**Efectos de cada comando del ciclo de vida**

| Comando | Lee | Escribe | Quita |
| --- | --- | --- | --- |
| `install` | Manifiesto y configuración existentes. | Agentes, habilidades, datos, archivos de módulo, `AGENTS.md` y archivos de herramienta, `_bmad/config.yaml`, el manifiesto, carpetas de salida vacías. | Nada. |
| `doctor` | Manifiesto, archivos, huellas, bloqueo. | Nada. | Nada. |
| `update-check` | Manifiesto, política; npm salvo sin conexión u off. | `.bmad/update-check.json` (caché). | Nada. |
| `update-policy` | Archivo de política. | `_bmad/update-policy.json`, solo si pasas opciones. | Nada. |
| `update` | Manifiesto, archivos, huellas, política. | Archivos cambiados, manifiesto, `.bmad/updates/<id>/` (recibo, copias), el bloqueo. | Los archivos que la nueva versión ya no entrega (los que no cambiaron, con copia). |
| `update --restore` | Recibo y copias. | Los archivos guardados, el estado del recibo. | Los archivos que la actualización había añadido. |
| `uninstall` | Manifiesto, archivos. | Nada. | Los archivos propios y sin cambios, el manifiesto y luego las carpetas vacías. |

<a id="your-edits"></a>
## Cuando has editado archivos

**Cómo trata cada comando un archivo que cambiaste**

| Situación | `install` | `update` | `uninstall` |
| --- | --- | --- | --- |
| Un archivo gestionado de agente o habilidad que editaste | Conservado, aviso. | Conservado, listado como conflicto. | Conservado. |
| Un archivo de instrucciones que BMAD+ escribió y luego editaste | Conservado. | Conservado, listado como conflicto. | Conservado. |
| Un archivo de instrucciones escrito por ti, nunca de BMAD+ | Conservado en interactivo; con `--yes`, guardado como `<file>.bak` y luego sustituido. | Conservado, listado como conflicto. | Conservado (sin marca). |
| Un archivo que añadiste en una carpeta de BMAD+ | Sin tocar. | Sin tocar. | Conservado, y su carpeta. |
| `_bmad/config.yaml` | Fusionado, tus claves ganan. | Sin tocar. | Conservado. |

<a id="offline"></a>
## Trabajar sin conexión

- Una vez instalado el paquete en local (añádelo una vez con `npm install --save-dev bmad-plus` y usa después `npx --no-install bmad-plus ...`), `install`, `doctor`, `update-policy`, `uninstall` y un `update` simple funcionan sin red alguna.
- `update-check` y `update --latest` son los únicos comandos que consultan npm. Sin conexión, `update-check` informa del estado `unknown` (motivo `registry-unavailable`, u `offline` con `--offline`), sale con 0, y un asistente simplemente sigue con tu tarea.
- Una respuesta de caché obsoleta se presenta como tal, con `stale: true`; nunca se presenta como actual.
- Solo el primerísimo `npx bmad-plus install` necesita red, para obtener el paquete, salvo que lo instalaras desde un archivo.

<a id="recovery"></a>
## Cuando algo sale mal

- Una actualización fallida se deshace sola e imprime el comando exacto `update --restore <id>`. Los recibos quedan en `.bmad/updates/`.
- `doctor` informa de un bloqueo de proyecto (`.bmad/update.lock`) de más de 60 minutos, o cuyo proceso ya no existe, como obsoleto, con el archivo que borrar. La siguiente instalación o actualización retoma un bloqueo cuyo proceso está demostrablemente muerto en esta máquina.
- Un manifiesto dañado se copia a `_bmad/.bmad-plus-install.json.corrupt.bak` antes de que `install` lo sustituya.
- Una instalación anterior a las huellas de propiedad (0.12.2 o anterior) se migra una vez ejecutando explícitamente un paquete más nuevo: `npx --yes bmad-plus@0.13.0 update --yes`. Antes se copian los originales.
- Un retroceso de versión siempre se rechaza. Para volver atrás usa `update --restore` con el recibo de la actualización que quieres deshacer.

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

<a id="example-install-lifecycle-customised-project"></a>
### Actualizar un proyecto donde editaste archivos de instrucciones

Añadiste tus propias reglas a `CLAUDE.md` y retocaste un archivo de agente, y quieres la última versión de BMAD+ sin perder ninguno de los dos.

**En tu asistente de IA**

```text
Comprueba si existe una versión más reciente de BMAD+ para este proyecto. Si es así, actualízala y lista exactamente qué archivos se conservaron porque los edité, y por qué.
```

**Lo que deberías obtener** El asistente ejecuta `update-check` y luego `update --latest --yes` con tu aprobación. El comando imprime un plan como `Planned changes: N files (R no longer shipped, removed with backup); preserved conflicts: 2.` y una línea por conflicto: `CLAUDE.md: preserved (local-instructions).` y `<agent file>: preserved (modified-managed-file).` Esos dos archivos no se tocan; todo lo demás se actualiza tras una copia de seguridad, y se indica la ruta del recibo bajo `.bmad/updates/` para poder deshacerlo con `update --restore`.

**Véase también**

- [install](https://bmad-plus.rochetta.fr/es/docs/reference/cli-install/)
- [doctor](https://bmad-plus.rochetta.fr/es/docs/reference/cli-doctor/)
- [update-check](https://bmad-plus.rochetta.fr/es/docs/reference/cli-update-check/)
- [update-policy](https://bmad-plus.rochetta.fr/es/docs/reference/cli-update-policy/)
- [update](https://bmad-plus.rochetta.fr/es/docs/reference/cli-update/)
- [uninstall](https://bmad-plus.rochetta.fr/es/docs/reference/cli-uninstall/)
- [Estructura del proyecto](https://bmad-plus.rochetta.fr/es/docs/reference/project-layout/)
- [Solución de problemas](https://bmad-plus.rochetta.fr/es/docs/faq/troubleshooting/)

[Documentación de BMAD+](https://bmad-plus.rochetta.fr/es/docs/) · [Guías](https://bmad-plus.rochetta.fr/es/docs/guides/)

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