07. Empezando un nuevo proyecto
Usa esto cuando aún no hay un repositorio Git, o cuando el repositorio existe pero es básicamente un lienzo en blanco con poco código.
07. Empezando un nuevo proyecto
Cuándo usar este flujo
Usa esto cuando aún no hay un repositorio Git, o cuando el repositorio existe pero es básicamente un lienzo en blanco con poco código. Si estás intentando entender un repositorio desconocido que ya tiene código, ve a 08. Entering an existing Repo for the first time en su lugar. Estos flujos se mueven en direcciones opuestas y no deberían usarse juntos en la misma sesión.
Antes de empezar: si prefieres no pasar
--langen cada llamada, fija el idioma de salida una vez conywc-setup-language. A partir de entonces los skills de abajo siguen esa configuración.
Flujo general
Este flujo es un embudo: divergir → decidir → converger → puerta de arranque. Extiende la idea a lo ancho (uno), fija el porqué y el qué (dos–tres), estréchala en estructura y especificación (cuatro–nueve), pasa la puerta que dice que estás listo para construir (diez) y luego entra en la implementación. Los pasos marcados como (opcional) pueden omitirse cuando ya están resueltos.
| Paso | Skill | Rol |
|---|---|---|
| uno | ywc-brainstorm (opcional) | Cuando la idea aún es difusa, fija propósito, restricciones, criterios de éxito y 2–3 enfoques alternativos mediante un diálogo socrático de una pregunta a la vez. Omítelo si la intención ya es firme |
| Dos | ywc-mission | Registra el motivo del proyecto, los criterios de éxito y el registro de enfoques rechazados en docs/mission.md. Fija el porqué antes de diseñar cualquier estructura |
| tres | ywc-tech-research (opcional) | Compara en paralelo los candidatos de pila tecnológica / biblioteca y registra la justificación de la elección. Omítelo si la pila ya está decidida |
| cuatro | ywc-project-scaffold | Con la pila decidida, diseña la estructura del directorio (genera un plan Markdown) |
| cinco | ywc-ubiquitous-language (recomendado para proyectos ricos en dominio) | Define el vocabulario compartido para desarrolladores, expertos de dominio y el LLM en docs/ubiquitous-language.md → la especificación y ywc-code-gen usan luego los términos canónicos |
| seis | ywc-spec-writer --full | Escribe la especificación completa bajo docs/specification/ (objetivo / característica / modelo de datos / flujo de usuario) |
| siete | ywc-spec-validate | Validar la integridad / consistencia / factibilidad / compatibilidad con el código de la especificación. Repite seis↔siete hasta DONE |
| ocho | ywc-project-docs | Documentos adicionales como Arquitectura / Producto / Operaciones, cuando sea necesario |
| nueve | ywc-task-generator | Descomponer la especificación DONE en Tasks segura para dependencias |
| diez | ywc-confidence-gate | Puntúa la preparación en cinco dimensiones antes de la implementación (PROCEED ≥90 / REVIEW 70–89 / STOP <70) |
| once | Ingrese 05. general cycle (medium/large) | Comenzar la implementación real |
Ejemplo de ejecución
1. Dar forma a la idea (opcional)
ywc-brainstorm Quiero que una pequeña empresa de construcción registre la entrada/salida sin una aplicación aparte, pero no sé por dónde empezarywc-brainstorm Quiero que una pequeña empresa de construcción registre la entrada/salida sin una aplicación aparte, pero no sé por dónde empezarEstrecha el propósito, las restricciones y las alternativas mediante un diálogo socrático de una pregunta a la vez. Si ya sabes claramente qué construir, omítelo y empieza desde el paso 2.
2. Registra el porqué del proyecto
ywc-mission El objetivo de este project es permitir que una pequeña empresa de construcción registre la entrada/salida de los trabajadores sin una aplicación aparte. Criterio de éxito: si un solo administrador puede cerrar la asistencia de 10 trabajadores o menos en 5 minutosywc-mission El objetivo de este project es permitir que una pequeña empresa de construcción registre la entrada/salida de los trabajadores sin una aplicación aparte. Criterio de éxito: si un solo administrador puede cerrar la asistencia de 10 trabajadores o menos en 5 minutosFija el porqué y los criterios de éxito antes que la estructura del directorio o la especificación: cada paso posterior se juzga contra esta mission.
3. Decide la pila tecnológica (opcional)
ywc-tech-research --compare 'PostgreSQL,SQLite' --depth 50ywc-tech-research --compare 'PostgreSQL,SQLite' --depth 50El paso 4 (scaffold) dibuja la estructura después de decidir la pila, así que si la pila aún no está resuelta, compara aquí los candidatos y deja la justificación antes de continuar. Omítelo si ya está decidida.
4. Diseñar la estructura del directorio
ywc-project-scaffold FastAPI + GraphQL + Clean Architecture, medium scaleywc-project-scaffold FastAPI + GraphQL + Clean Architecture, medium scaleSe requiere el idioma. Si faltan otros detalles, el Skill hace preguntas de seguimiento, por lo que especifique Framework / Arquitectura / Escala juntos cuando sea posible. Esta habilidad produce solo un plan Markdown. La creación real del archivo la maneja ywc-code-gen.
5. Glosario de dominio (recomendado para proyectos ricos en dominio)
ywc-ubiquitous-language --ddd --output docs/ubiquitous-language.mdywc-ubiquitous-language --ddd --output docs/ubiquitous-language.mdDefinir los términos canónicos por adelantado hace que la especificación siguiente y ywc-code-gen usen los mismos nombres, evitando que los sinónimos se cuelen en el código. Omítelo en proyectos con vocabulario simple.
6. Escribe la especificación completa
ywc-spec-writer --full --lang koywc-spec-writer --full --lang ko7. Validar la especificación
ywc-spec-validate --spec docs/specification/01-overview.mdywc-spec-validate --spec docs/specification/01-overview.mdSi devuelve DONE_WITH_CONCERNS, vuelva al paso 6 ywc-spec-writer, refine la especificación y valide de nuevo. Repita hasta que devuelva DONE. (ywc-spec-ready es un bucle de convergencia automática solo para especificaciones creadas por ywc-plan, así que no lo use aquí.)
8. Documentos adicionales (cuando sea necesario)
ywc-project-docs --lang krywc-project-docs --lang kr9. Descomponer en Tasks
ywc-task-generator --lang koywc-task-generator --lang ko10. Puerta de arranque
ywc-confidence-gate revisa si es seguro empezar a implementar con esta spec y estas tasksywc-confidence-gate revisa si es seguro empezar a implementar con esta spec y estas tasksPuntúa cinco dimensiones: scope clarity / architecture compliance / evidence quality / reuse verified / root cause. Con PROCEED (≥90) entra en 05. general cycle; con STOP (<70), refuerza primero la dimensión señalada.
Notas
ywc-brainstorm,ywc-tech-researchyywc-ubiquitous-languageson pasos auxiliares que puedes omitir según la situación. Si la intención, la pila y el vocabulario de dominio ya están claros, seguir solo la columna vertebral dos → cuatro → seis → siete → nueve → diez es suficiente.- Si
ywc-confidence-gatedevuelveSTOP(<70), no entres en la implementación: completa primero la dimensión señalada y luego vuelve a pasar la puerta. - Si el alcance es lo suficientemente pequeño como para implementarse directamente sin descomposición de especificaciones,
ywc-planpuede dirigir al camino Pequeño y saltarse todo este flujo. ywc-onboard-repose mueve en dirección opuesta a este flujo (investigando un repositorio existente), así que no lo uses al crear un proyecto nuevo.
Previous: 06. Finish automatically from one goal - Next: 08. Entering an existing Repo for the first time