Explorar la documentación

Caso práctico: comprobar lo que los agentes dan por terminado

Una revisión calificó de falsas 11 afirmaciones en lo que escribieron 39 agentes en menos de doce horas, y los revisores se equivocaron dos veces. Mira cómo y repite los cinco comandos.

En esta página
  1. Lo que costó, en cifras
  2. Cinco pasos que puedes copiar
  3. Lo que detectaron los revisores y dónde se equivocaron
  4. Dónde decidió una persona
  5. Repítelo tú mismo
  6. Lo que esto no demuestra, para que lo juzgues

Si un agente de IA alguna vez te dijo «terminado» y no lo estaba, esta página es para ti. Muestra lo que pasó cuando 39 agentes rehicieron la landing, la documentación, los ejemplos y los vídeos de este sitio en menos de doce horas, entre la tarde del 2026-10-18 y la mañana del 2026-10-19: una revisión calificó de falsas 11 afirmaciones, los revisores se equivocaron dos veces y una persona decidió qué conservar. Verás los cinco pasos, las cifras con sus fuentes, los errores y los comandos para repetirlo en tu propio proyecto. Si solo quieres ejecutarlo, ve a Repítelo tú mismo.

Nota Antes de las cifras: los defectos

Lee esto primero. Los agentes los lanzó Claude Code con su propia herramienta de agentes, cada implementador en su propio worktree de git, y no el comando bmad-plus swarm: ese comando reparte el trabajo, escribe los briefs, comprueba las respuestas y hace el recuento, y deja el lanzamiento a tu asistente. Los revisores también son modelos, y dos de sus hallazgos eran falsos. Es una sola ejecución y nadie ha medido todavía si los lectores encuentran el resultado más claro. El patrón es el que incluye BMAD+ (preguntar primero con un intake, repartir con presupuesto, revisar de forma independiente, parar en las puertas). Cada cifra de abajo se volvió a contar el 2026-10-19 desde el repositorio, los registros o los informes de revisión; una cifra que no se pudo volver a contar no está en esta página.

La IA dijo «terminado». ¿De verdad? Cómo 39 agentes rehicieron este sitio en menos de doce horas, qué detectaron los revisores y los cinco pasos y comandos para repetirlo tú mismo.
Transcripción

La IA dijo “terminado”. ¿De verdad? Treinta y nueve agentes rehicieron un sitio en menos de doce horas. Unos revisores encontraron once afirmaciones falsas. Y también se equivocaron dos veces. Seguro que un “terminado” ya te decepcionó alguna vez. Así se comprueba: cinco pasos, cinco comandos. Uno. ¿Cómo evitar los datos inventados? Escribe primero las reglas: desde cero, hechos sacados del código y lo simulado se señala. Dos. ¿Qué debe preguntar antes de empezar? El intake lista lo que se sabe y lo que falta. Tres. ¿Cómo evitar que los agentes se pisen? Un brief por página, una copia del repositorio para cada uno. BMAD+ reparte los briefs y limita cada oleada. Tu asistente lanza los agentes. Cuatro. ¿Quién comprueba el trabajo? Cinco lectores que no escribieron nada, repitiendo comandos en un servidor limpio. Y la puerta dice que no hasta que cada archivo esté contabilizado. Una promesa de archivos conservados. Un comando que nunca existió. Un recuento errado en una unidad. Cinco. Corrige y luego demuestra: diecinueve commits de corrección, 1879 pruebas, cero infracciones de accesibilidad. Una persona se quedó con la última palabra. Todavía nadie ha medido si los lectores lo encuentran más claro. Te llevas cinco comandos, tres archivos de enjambre, la puerta de revisión y siete errores que evitar. Empieza por el paso uno. “Terminado” es solo una afirmación. Repítela.

Transcripción con descripción visual

Lo que costó, en cifras

Lo que produjo la reconstrucción y de dónde sale cada cifra
MedidaValorDe dónde sale
Agentes, hasta la rama integrada39El registro guardado de los subagentes de la sesión
Commits en la rama de integración133 (118 ordinarios, 15 fusiones)git log desde master
Archivos modificados328 (72 665 líneas añadidas, 650 eliminadas)git diff --shortstat
Páginas del sitio8 antes, 244 después, cada una con su espejo en MarkdownEl sitemap en línea del 2026-10-18 y luego la salida del build
Páginas de documentación52 por idioma, en cuatro idiomasEl registro de páginas
Ejemplos y transcripciones de terminal160 ejemplos; 70 transcripciones, 19 de ellas simuladas y marcadas como talesEl registro de páginas
Vídeos6, narrados en inglés y francés, 24 archivos de subtítulosEl manifiesto de medios
Revisores independientes5, con un informe escrito cada unoLos informes de revisión del 2026-10-19
Commits de corrección tras las revisiones19, en cuatro ramasgit log de las cuatro ramas de corrección
Pruebas y comprobaciones al final79 pruebas del sitio, 1879 pruebas de la suite principal, 91 986 comprobaciones de búsqueda, 2539 comprobaciones de releaseLas ejecuciones de las puertas
Ejecución en navegador976 casos de ventana, 300 ejecuciones de accesibilidad, 0 infraccionesEl registro de la comprobación en navegador
Tiempo11 h 52 min desde la petición hasta la rama integrada, 3 h 21 min de ellos en pausaLas marcas de tiempo de commits y sesión
Créditos de mediosUnos 709 créditos para 15 clips generados y la narraciónEl registro de créditos

Cinco pasos que puedes copiar

  1. Escribe primero las reglas

    Escribe el objetivo en una frase y las reglas que nunca se doblan. Aquí el objetivo era un sitio que cubriera todas las posibilidades de BMAD+ en cuatro idiomas, con vídeos. Las reglas: todo escrito desde cero, hechos solo del repositorio, lo simulado lo dice, y nada se ejecuta en el ordenador del propietario (las compilaciones y pruebas corrieron en un servidor de pruebas, en contenedores).

  2. Deja que pregunte antes de actuar

    Antes de que arrancara ningún agente se listó el trabajo: qué existía y qué faltaba (los comandos nuevos no tenían ejemplo ni página de referencia). Después el propietario amplió el alcance. En BMAD+ este paso es el intake: anota qué está respondido, qué se tomó por defecto y qué se desconoce, y hace como máximo seis preguntas por mensaje.

    En la terminal del proyecto
    npx bmad-plus intake plan --intake .agents/skills/pack-design/intake.yaml --answers _bmad-output/design/intake.json

  3. Dale a cada agente su página y su copia

    Un agente inventarió primero todo el producto. Luego la landing, la documentación, las grabaciones de pantalla y los vídeos se construyeron en paralelo, cada agente en su propio worktree de git y su propia copia del proyecto en el servidor de pruebas, con alcances que no se solapan para poder fusionar las ramas. En BMAD+ la misma forma es una definición de enjambre con una unidad por página y alcances disjuntos.

    En la terminal del proyecto
    npx bmad-plus swarm init --definition swarm/page-fanout.json --units swarm/units.json

  4. Haz que otro intente romperlo

    Cinco revisores que no habían escrito nada leyeron el resultado en un commit fijo: uno comprobó los hechos de las páginas de packs, agentes y conceptos, otro la referencia, las guías, la seguridad, las FAQ y la landing, otro repitió los ejemplos, otro leyó el francés, el español y el alemán y otro manejó un navegador para la accesibilidad. Repitieron los comandos en un servidor limpio en vez de fiarse del texto. En BMAD+ la capa de evidencia es review: sella el alcance y se niega a dar un veredicto mientras haya archivos sin contabilizar.

    En la terminal del proyecto
    npx bmad-plus review scope site --workspace --base HEAD
    npx bmad-plus review gate site

  5. Corrige y luego demuéstralo

    Siete grupos de corrección y cuatro pasadas corrigieron lo que habían hallado las revisiones (19 commits de corrección en cuatro ramas). Un integrador fusionó 14 ramas y volvió a pasar todas las puertas: 79 pruebas del sitio, 1879 pruebas, 91 986 comprobaciones de búsqueda, 2539 comprobaciones de release y una ejecución en navegador con 976 casos de ventana y 300 ejecuciones de accesibilidad sin ninguna infracción. No se desplegó nada hasta que el propietario lo dijo.

Lo que detectaron los revisores y dónde se equivocaron

Quizá esperes que unos agentes que han leído el código acierten con los hechos. No siempre fue así. Estas siete afirmaciones no sobrevivieron a repetir el comando o a leer el código, y cada una se corrigió.

Siete afirmaciones que no sobrevivieron a una repetición
Lo que decía el borradorLo que halló el revisorLa corrección
El instalador conserva los archivos de instrucciones que escribiste.Con install --yes, un CLAUDE.md que escribiste se copia a CLAUDE.md.bak y luego se reemplaza. La frase estaba en cuatro páginas.Las páginas dicen: no en silencio. Las instalaciones interactivas y las actualizaciones lo conservan, --yes hace antes una copia de seguridad, --tools none no toca ninguna configuración de herramientas.
Tres comandos de la landing, presentados como ejecutables.Repetido: intake plan exige --answers, mem recall con clasificación por evidencias exige un alcance de proyecto, swarm init pedía --context pitch=ARCHIVO.Los comandos llevan las opciones que faltaban y se ejecutan.
Una instrucción que empezaba por /animated.No existe ningún comando /animated en el producto.La instrucción es la frase que escucha el agente: construir un sitio animado a partir de un vídeo.
Un ejemplo de Nexus que mostraba verification=passed justo después de create.Repetido, verify justo después de create falla con código de salida 1: necesita trabajo terminado, no aceptado y reconciliado.El ejemplo ahora arranca, registra y verifica una tarea real, con salida repetida.
Los comandos tras la primera instalación empiezan por npx --no-install.En un proyecto que nunca ejecutó npm install --save-dev bmad-plus, ese comando se detiene con «npx canceled due to missing packages».Los ejemplos usan npx bmad-plus; la forma --no-install se explica donde aparece, con su requisito previo. Los archivos de instrucciones que genera el instalador siguen diciendo --no-install: eso necesita una release y aún no está corregido.
Dos clips de vídeo del instalador mostraban Shield con 26 marcos.El registro cuenta 27, y todas las demás páginas decían 27.Los dos clips se grabaron de nuevo con el instalador actual.
Subtítulos: una entrada por frase, y subtítulos en francés que reformulaban la narración.Líneas de hasta 79 caracteres, entradas de hasta 11 segundos; los subtítulos en francés no coincidían con las palabras dichas.Los 24 archivos de subtítulos se cortan a 2 líneas de 42 caracteres y 6 segundos; los franceses siguen la voz palabra por palabra.

Advertencia Los revisores también se equivocaron

Dos hallazgos no se sostuvieron. Una revisión afirmaba que la 0.23.0 no estaba en npm; sí está, y los comandos de esta página la instalan. Otra señalaba títulos en inglés incrustados en los vídeos en francés; el director de los vídeos volvió a comprobar los fotogramas: las superposiciones ya estaban en francés y el inglés que queda es la salida real del terminal, conservada a propósito. Un revisor es un segundo lector, no un oráculo: cada hallazgo se comprobó antes de corregirlo y una persona se quedó con la última palabra.

Dónde decidió una persona

  • Lanzar, con enjambres en paralelo, y ampliar el alcance a todas las posibilidades del producto y a vídeos de presentación con voz en off.
  • La voz de narración: se rechazó la primera y se aprobó, tras escucharla, una voz de ElevenLabs (Celine).
  • Arrancar la documentación, los ejemplos y la referencia de la CLI en paralelo en vez de uno tras otro.
  • Quién figura como autor de qué en el README y en la descripción de npm.
  • Una copia de seguridad completa del sitio en línea antes de sustituirlo.
  • La redacción de dos afirmaciones públicas: Dev Studio se describe como original y la tarjeta del pack SEO dice «SEO / GEO».
  • Una pausa mientras el propietario estaba ausente y la reanudación esa misma noche.
  • Que no se despliegue nada hasta que el propietario lo diga.

Repítelo tú mismo

Cinco comandos llevan el método: install, intake plan, swarm init, review scope y review gate. Los bloques de abajo los ejecutan, con los pocos comandos alrededor que los hacen funcionar. Puedes parar tras cualquier bloque.

Necesitas Node.js 20 o superior y un proyecto Git con al menos un commit. Los bloques de abajo son salida real del paquete publicado 0.23.0. Donde los subagentes escribirían sus respuestas, la parte del enjambre escribe a mano tres archivos de respuesta pequeños: no se ejecuta ningún modelo, así que el recuento cuenta respuestas de sustitución y no dice nada de páginas reales. La definición, la plantilla de brief y el archivo de unidades están impresos en la página del enjambre.

Instalar los packs
npx bmad-plus install --yes --lang en --packs core,design,memory --tools claude-code
Salida reducida a su última línea.
BMAD+ is ready! Talk to Atlas to get started 🚀

Salida capturada de una ejecución real. Fuente: Reproducido el 2026-10-19 con el paquete publicado 0.23.0, lanzado con npx, en un contenedor Node 20 limpio, en un proyecto Git desechable

Preguntar primero: anotar respuestas y listar lo que sigue abierto
npx bmad-plus intake record --intake .agents/skills/pack-design/intake.yaml --answers _bmad-output/design/intake.json --set surface_kind=landing --set "audience=Urban professionals who buy coffee most days" --set "job=Get a first-time visitor to open a loyalty card"
Recorded surface_kind, audience, job in _bmad-output/design/intake.json.
npx bmad-plus intake plan --intake .agents/skills/pack-design/intake.yaml --answers _bmad-output/design/intake.json
design-read (design): ready — 3 answered, 0 defaulted, 0 unknown, 10 not asked yet.
Ask next (at most 6 per message):
  - brand_assets [choice] Which brand assets exist already? None, a partial set (a logo and a colour or two), or a full kit (logo, palette, type, voice)? (choices: none, partial, full)
Otras cinco preguntas siguen en la salida real.

Salida capturada de una ejecución real. Fuente: Reproducido el 2026-10-19 con el paquete publicado 0.23.0, lanzado con npx, en un contenedor Node 20 limpio, en un proyecto Git desechable

Repartir: un brief por página y luego comprobar y contar las respuestas
npx bmad-plus swarm init --definition swarm/page-fanout.json --units swarm/units.json
site-pages-20261019-kgoi: fanout of 3 units, budget 26, approval not-needed.
Units listed, no seed.
Next: bmad-plus swarm briefs site-pages-20261019-kgoi
npx bmad-plus swarm briefs site-pages-20261019-kgoi
site-pages-20261019-kgoi: 3 of 3 units need a sub-agent, in waves of 10.
Wave 1:
  about  /work/app/.bmad-plus/swarm/runs/site-pages-20261019-kgoi/briefs/about.md
  pricing  /work/app/.bmad-plus/swarm/runs/site-pages-20261019-kgoi/briefs/pricing.md
  contact  /work/app/.bmad-plus/swarm/runs/site-pages-20261019-kgoi/briefs/contact.md
Each sub-agent: Read the brief and follow it exactly; it is your whole instruction.
Disclosure: Each page was written by a separate sub-agent from the same brief; read them together before publishing.
Aquí los tres archivos de respuesta se escribieron a mano, donde cada subagente escribiría el suyo.
npx bmad-plus swarm check site-pages-20261019-kgoi
site-pages-20261019-kgoi: 3 of 3 valid answers.
npx bmad-plus swarm tally site-pages-20261019-kgoi
/work/app/.bmad-plus/swarm/runs/site-pages-20261019-kgoi/tally.md
3 of 3 units counted; 0 skipped.
Disclosure: Each page was written by a separate sub-agent from the same brief; read them together before publishing.

Salida capturada de una ejecución real. Fuente: Reproducido el 2026-10-19 con el paquete publicado 0.23.0, lanzado con npx, en un contenedor Node 20 limpio, en un proyecto Git desechable

Revisar: sellar el alcance y ver cómo la puerta se niega
npx bmad-plus review scope site --workspace --base HEAD
/work/app/_bmad-output/review/site/scope.json
1 file(s) to review, 1 changed lines, 1 unit(s) — scope 1ef2d235ea25
checklist: /work/app/_bmad-output/review/site/checklist.md
plan: medium effort, 2 pass(es), refutation pass
Every selected file must end in coverage.json as completed, failed or waived (with a reason).
npx bmad-plus review gate site
site: incomplete — coverage 0/1 completed (0 waived), 0 open finding(s), 0 refuted
  - no coverage.json: which files were reviewed is not established
  - no findings.json: write it even when there is nothing to report
  - 1 selected file(s) never accounted for: site/contact/index.md
Código de salida 2: el veredicto sigue incompleto hasta que el revisor escribe su cobertura y sus hallazgos.

Salida capturada de una ejecución real. Fuente: Reproducido el 2026-10-19 con el paquete publicado 0.23.0, lanzado con npx, en un contenedor Node 20 limpio, en un proyecto Git desechable

Reescribir varias páginas en paralelo y hacer que un tercero las ataque

Úsalo cuando varias páginas o secciones deban cambiar a la vez sin que los agentes se pisen y quieras un revisor que no haya escrito ninguna. Necesita los tres archivos del enjambre del ejemplo de arriba y un proyecto Git con un commit.

En tu asistente de IA
Lanza el enjambre site-pages desde swarm/page-fanout.json y swarm/units.json: un subagente por página, cada uno limitado a su propia carpeta, una oleada cada vez. Cuando estén las respuestas, ejecuta swarm check y swarm tally e informa primero del aviso de transparencia. Luego, con otro subagente que no haya escrito ninguna de las páginas, ejecuta review scope sobre el árbol de trabajo frente a HEAD, lee cada archivo modificado y repite cada comando que muestren las páginas. No aceptes una página cuyo comando falle y dime qué afirmación no pudo verificar el revisor.

Lo que deberías obtener Los briefs se escriben, los subagentes responden en oleadas de 10 como máximo, swarm check indica las respuestas válidas y tally.md abre con el aviso de transparencia. El revisor sella un alcance con review scope, y review gate sigue incompleto, con código de salida 2, hasta que cada archivo modificado esté cubierto por un archivo escrito de cobertura y hallazgos. Un comando que falla al repetirse se informa como hallazgo, no se corrige en silencio.

Lo que esto no demuestra, para que lo juzgues

  • Un proyecto y una ejecución: muestra que el método puede atrapar errores, no con qué frecuencia.
  • Los revisores también son modelos. Un hallazgo es una pista que comprobar, y dos de ellos eran falsos.
  • Los recuentos que se muestran en pantalla y en los ejemplos son demostraciones y están marcados como tales.
  • Nadie ha medido si el sitio es más fácil de entender. Las comprobaciones cubren hechos, reglas de accesibilidad y estructura, no la comprensión.
  • Los textos en francés, español y alemán los revisó un agente frente al inglés y a un glosario común, no un corrector nativo.
  • Los vídeos se comprobaron con scripts y con un agente que mira fotogramas. Cómo suenan y cómo se sienten sigue siendo un juicio humano.

Véase también