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