Empezar
Generar un proyecto lleva un comando. Esta página cubre lo que la computadora necesita antes, lo que pregunta el CLI y lo que llega.
Revisa la computadora
Prumo necesita Node 22.23.4 o posterior y pnpm 10.26 o posterior, en macOS, Linux o Windows. En Windows se ejecuta de forma nativa: el proyecto vive en una carpeta de Windows y lo ejecutan el Node y el pnpm de Windows. Dentro de una distribución de WSL, con su propio Node, pnpm y Docker, Prumo está en Linux, que es compatible, aunque no se prueba en WSL en particular; las herramientas de Windows que trabajan sobre un proyecto dentro del sistema de archivos de WSL no son compatibles. Todo lo que tenga una API también necesita Docker, porque ahí corre la base de datos de desarrollo: en Windows, Docker Desktop con su backend WSL2, configurado para contenedores Linux. Este comando lo revisa todo y dice qué falta.
npx @stjoseph/prumo doctorGenera el proyecto
Pregunta qué construir, escribe el proyecto en my-app/, ejecuta git init e instala. No se hace ningún commit, así que el primer commit es tuyo y su diff muestra todo lo que escribió Prumo.
npx @stjoseph/prumo new my-appResponde sin terminal
Cada pregunta tiene una flag, y sin terminal cada pregunta que surge de las respuestas necesita la suya: una flag que falta es un error. Más de un tipo forma un workspace; un solo tipo necesita --alone o --monorepo para decir cómo se organiza.
npx @stjoseph/prumo new my-app --types api,web --single-tenant --single-language --languages en --no-mcp --sign-in password --email --no-socialCrea la base de datos
Dentro de un proyecto con API, esto crea la base de datos de desarrollo en Docker, escribe su URL en .env y ejecuta las migraciones, salvo que se pase --skip-migrate. Una vez que la base de datos existe, prumo clean quita la preparación que el proyecto necesitó una sola vez.
npx @stjoseph/prumo db
Las flags
| Flag | Qué responde |
|---|---|
| --types api,web,mobile | Qué contiene el proyecto. Más de un tipo forma un workspace; web:vite, web:next o web:astro elige el framework web, Vite por defecto |
| --alone --monorepo | Cómo se organiza un solo tipo |
| --multi-tenant --single-tenant | Con una api, web o mobile: si la aplicación atiende a varios inquilinos. Multi-tenant incluye las convenciones de multi-tenancy; el código generado en sí todavía no distingue inquilinos |
| --single-language --multi-language | Si el proyecto habla un idioma, con sus textos escritos donde se muestran, o varios, desde mensajes: un archivo por idioma, comparado con una base, para que otro idioma sea un archivo y su traducción |
| --languages en,pt-BR,es-419 | Los idiomas: exactamente uno con --single-language, o con --multi-language uno o más, la base primero. Prumo traduce sus plantillas a estos tres |
| --mcp --no-mcp | Con una api y una web: si los asistentes de IA llegan a la API por MCP, con la sesión del usuario |
| --sign-in password,email-code,phone-code | Con una api: cómo inician sesión las personas, una forma o más: una contraseña, o un código de 6 dígitos enviado por email o por SMS, y el primero crea la cuenta |
| --email --no-email | Con una api y password: verificación de email y restablecimiento de contraseña, con un código de 6 dígitos enviado por el puerto Mailer, que escribe en el log hasta que le des un proveedor |
| --social google,apple --no-social | Con una api y una web o mobile: inicio de sesión con Google, Apple o ambos |
| --skip-install | Se detiene después de escribir los archivos |
Qué llegó
| Archivo | Qué es |
|---|---|
| .prumo/ | Las convenciones, en diecisiete áreas. Solo se copian las áreas que piden las respuestas |
| .prumo/INDEX.md | Una línea por documento. Lo genera la herramienta, y se puede regenerar sin riesgo |
| .context/INDEX.md | Las reglas propias del proyecto, que valen por encima de .prumo/. Nace vacío; el asistente agrega una regla cuando el desarrollador la enuncia |
| AGENTS.md | El puntero a .context/ y .prumo/, que leen Codex, Cursor, Copilot, Gemini CLI y otros |
| CLAUDE.md | Un import de @AGENTS.md, para Claude Code |