CommunityProgramación y desarrollogithub.com

project-bootstrap

Configuración completa e inicial de un repositorio nuevo: entrevista al usuario, crea CLAUDE.md, AGENTS.md y documentos del proyecto (PRD, ROADMAP, CONTEXT, STATE, SETUP, ADRs), instala solo las skills relevantes para el stack del proyecto, añade un agente revisor y arregla .gitignore. Luego verifica, hace commit y se detiene.

¿Qué es project-bootstrap?

Este skill orquesta la configuración inicial de un proyecto desde cero para asistentes de codificación como Claude Code, Cursor o Codex. Entrevista al usuario para conocer detalles como el nombre, tipo (iOS, web, Python/generic) y propósito del proyecto, y a partir de esas respuestas genera una estructura completa de documentación: CLAUDE.md, AGENTS.md, PRD, ROADMAP, CONTEXT, STATE, SETUP y ADRs. Luego instala únicamente las skills auxiliares correspondientes al stack (por ejemplo, SwiftUI para iOS) fijadas a un commit SHA específico, y aplica un flujo de trabajo por defecto (especificación → plan → construcción → revisión separada). Finalmente verifica que no queden tokens sin reemplazar, que .gitignore cubra secretos y que el proyecto compile; hace un commit único y se detiene, dejando listo el repositorio para comenzar el desarrollo en una sesión posterior. Es útil cuando el usuario dice "configurar un proyecto nuevo", "inicializar este repo", "bootstrap" o similar; no debe usarse para añadir funcionalidades, arreglar bugs o continuar un proyecto ya configurado.

Compatible con✓Claude Code~Codex CLI~Cursor
npx skills add https://github.com/samyak-here/skill-md/tree/HEAD

Installed? Explore more Programación y desarrollo skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

Preguntar en tu IA favorita

Abre un nuevo chat con esta habilidad de agente ya precargada.

Documentación

Project Bootstrap

Un orquestador ligero. Este skill no contiene otros skills, sino que carga el skill adecuado en cada paso, ejecuta un script determinista para la creación de archivos y rellena plantillas con las respuestas del usuario. Si algún paso a continuación entra en conflicto con un skill copiado, este skill prevalece.

Reglas de precedencia — solo durante la sesión de configuración

Este orden aplica únicamente durante la sesión de configuración, mientras este skill esté activo. Cuando las instrucciones entren en conflicto durante la configuración, aplíquelas en este orden:

  1. Este skill (project-bootstrap) — alcance de configuración, reglas de seguridad, regla de parada.
  2. El CLAUDE.md del proyecto — a medida que se va creando.
  3. El skill del stack — por ejemplo, el skill de SwiftUI o diseño para este tipo de proyecto.
  4. La lista de verificación del flujo de trabajo — references/workflow.md, el proceso por defecto.

Una vez que la configuración termina, este skill deja de estar activo y el orden expira: el CLAUDE.md del proyecto (junto con sus documentos) es el único conjunto de instrucciones vigente para sesiones futuras.

Nunca instale dos marcos de trabajo en conflicto (por ejemplo, no instale tanto un marco pesado basado en especificaciones como la lista de verificación de flujo de trabajo de este skill). Si el usuario nombra explícitamente un marco de trabajo, use ese en lugar de la lista de verificación por defecto y registre la elección en docs/SETUP.md.

Reglas de seguridad (nunca anuladas)

  • Nunca escriba secretos, claves API o tokens en ningún archivo generado, y nunca ponga un secreto del lado del servidor (por ejemplo, una clave secreta de API bancaria) dentro de una aplicación cliente.
  • Nunca sobrescriba un archivo existente sin la aprobación del usuario (scripts/bootstrap.py lo rechaza por defecto; --force es solo opt-in, y con --force el script primero respalda cada archivo en <nombrearchivo>.pre-bootstrap.bak).
  • Solo durante la configuración: no comience a construir funcionalidades del producto en esta sesión.

Flujo de trabajo

Ejecute estos pasos en orden. No se salte ninguno.

1. Entrevista

Cargue references/interview.md. Haga sus preguntas una a la vez y escriba cada respuesta en el documento correspondiente a medida que llegue — no mantenga todo en la memoria de la conversación. Si el usuario responde varias preguntas a la vez, registre cada respuesta dada, marque esas preguntas como respondidas y continúe desde la primera no respondida — nunca vuelva a preguntar una pregunta ya respondida. Deje de entrevistar cuando cada pregunta tenga una respuesta o el usuario la difiera explícitamente (registre los elementos diferidos en docs/STATE.md).

2. Ejecutar el script

Desde el directorio de este skill:

python3 scripts/bootstrap.py \
  --project-name "<nombre de la entrevista>" \
  --type <ios|web|python|generic> \
  --purpose "<propósito de una línea de la entrevista>" \
  --target <ruta al repositorio del proyecto nuevo> \
  --allow-placeholders

--allow-placeholders es obligatorio aquí: en esta etapa las plantillas aún contienen intencionadamente tokens de reemplazo {{...}} (el Paso 3 los rellena), por lo que el script pasa la verificación con una advertencia de token por archivo en lugar de fallar. El directorio de destino debe existir (el repositorio del proyecto nuevo); el script da error si el destino no existe en lugar de crear una ruta mal escrita — pase --create-target solo si el usuario quiere explícitamente que el script cree ese directorio.

Esto crea los directorios y renderiza las plantillas de forma determinista. Informe exactamente lo que creó, saltó o sobrescribió — nunca afirme que un archivo existe si el script no lo reportó.

3. Rellenar las plantillas con las respuestas de la entrevista

Reemplace los prompts de relleno restantes en los archivos generados con las respuestas reales: stack y comandos de compilación/prueba en CLAUDE.md / AGENTS.md, alcance en docs/PRD.md, fases en docs/ROADMAP.md, términos del glosario en docs/CONTEXT.md. Mantenga CLAUDE.md breve — si supera aproximadamente 80 líneas, mueva los detalles a docs/ y deje una referencia.

4. Instalar skills del stack — fijados, leer antes de instalar

Cargue la referencia para el tipo de proyecto e instale solo los skills que enumera:

  • iOS → references/ios.md
  • Web → references/web.md
  • Python / genérico → sin skill de stack por defecto; anote esa elección en SETUP.

Cada skill listado está fijado a un SHA de commit exacto en la tabla de skills fijados de la referencia. Instalar significa: clonar el repositorio en .claude/skills/ del proyecto, luego git checkout del SHA fijado — nunca instale desde una rama móvil, y nunca cambie un pin sin registrar el nuevo SHA.

Leer antes de instalar es obligatorio. Después de clonar, antes de que la instalación cuente como completa, para cada skill:

  1. Lea su SKILL.md completo (y note cualquier otra cosa que cargue por defecto).
  2. Escriba un resumen de 2–3 líneas: qué instrucciones cargará este skill en sesiones futuras.
  3. Marque cualquier cosa que solicite acceso a la red, uso de credenciales o comandos destructivos. Informe las banderas al usuario; no instale silenciosamente un skill que solicite cualquiera de esas cosas sin la aprobación del usuario.

Registre en docs/SETUP.md, por skill: nombre, URL de origen exacta, SHA fijado, fecha de instalación y el resumen de lectura. No copie el contenido de un skill dentro de CLAUDE.md — el skill permanece como una unidad cargable separada.

5. Establecer la regla del flujo de trabajo

Escriba el bucle por defecto de references/workflow.md en CLAUDE.md si aún no está allí: especificación → plan → construcción → revisión separada, una fase por sesión nueva, docs/STATE.md actualizado al final de cada sesión.

6. Verificar — comprobación nueva, no la salida del Paso 2

Ejecute la verificación ahora, de nuevo, en modo --verify (lee el destino tal como está actualmente y no modifica nada):

python3 scripts/bootstrap.py --verify --target <ruta al repositorio del proyecto>

No reutilice la salida de la ejecución del Paso 2 — esa ejecución es anterior al relleno del Paso 3 y a las instalaciones del Paso 4. No agregue --allow-placeholders al comando de verificación — el script rechaza esa combinación directamente, porque la verificación debe ejecutarse contra archivos rellenados. --verify falla en cualquier token de relleno restante en los archivos generados: si falla en tokens, el Paso 3 no se completó — vuelva atrás, rellene los tokens restantes y vuelva a ejecutar --verify hasta que pase. --verify también verifica el contenido, no solo los tokens: la lista de fuera de alcance del PRD debe estar no vacía, y docs/SETUP.md debe registrar un SHA fijado para cada skill instalado (o indicar que no se instalaron skills de stack). También:

  • Confirme que .gitignore cubre los secretos para este stack.
  • Confirme que la aplicación vacía/de plantilla del proyecto aún se compila con el comando de compilación registrado en CLAUDE.md (si existe un comando de compilación todavía).
  • Vuelva a leer docs/SETUP.md: cada skill instalado debe estar listado con su URL de origen, SHA fijado, fecha de instalación y resumen de lectura.

7. Hacer commit

Un solo commit, nada más:

chore: initial project setup

Incluya solo los archivos de configuración. Si la identidad del usuario de git o un remoto no está configurado, dígalo y deje el commit al usuario — no invente ninguna de las dos cosas.

8. Detenerse

Muestre al usuario el árbol de archivos creado y la Fase 1 de docs/ROADMAP.md. Luego deténgase. No comience la Fase 1, no construya una funcionalidad y no ofrezca "solo comenzar el esqueleto" — la siguiente fase pertenece a una sesión nueva (consulte references/workflow.md).

Válvula de escape: deténgase a menos que el usuario le indique explícitamente que continúe. Si lo hace, recomiende — una vez — que la Fase 1 aún ocurra en una sesión nueva, luego obedezca al usuario y continúe.

Archivos de referencia — cargar bajo demanda

ArchivoCargar cuando
references/interview.mdSiempre — Paso 1.
references/ios.mdEl tipo de proyecto es ios.
references/web.mdEl tipo de proyecto es web.
references/workflow.mdPaso 5, y cualquier sesión posterior que trabaje en un repositorio configurado.

Skills relacionados