← Volver al listado de tecnologías
Flujo de Trabajo y Comandos de Spec-Kit
Flujo de Trabajo y Comandos
Spec-Kit proporciona cinco comandos slash que forman un flujo de trabajo completo.
Resumen de Comandos
| Comando | Propósito | Output |
|---|---|---|
/speckit.constitution | Definir principios | constitution.md |
/speckit.specify | Describir requisitos | specs/*.md |
/speckit.plan | Crear plan técnico | plans/*.md |
/speckit.tasks | Desglosar tareas | tasks/*.md |
/speckit.implement | Generar código | src/* |
1. /speckit.constitution
Define los principios fundamentales e inmutables del proyecto.
Uso
/speckit.constitution
Qué Incluir
- Stack tecnológico: Lenguajes, frameworks, herramientas
- Patrones arquitectónicos: Hexagonal, Clean, etc.
- Estándares de código: Linting, formateo, testing
- Restricciones: Lo que NO se debe hacer
Ejemplo de Output
# Constitution
## Stack Tecnológico
- Runtime: Node.js 20+
- Framework: Hono
- Base de datos: PostgreSQL
- Testing: Vitest
## Principios Arquitectónicos
- Arquitectura hexagonal
- Inyección de dependencias
- Separación de capas
## Restricciones
- NO usar ORMs
- NO lógica en controladores
2. /speckit.specify
Describe qué debe hacer el sistema en términos funcionales.
Uso
/speckit.specify [descripción del requisito]
Qué Incluir
- Comportamiento esperado del usuario
- Criterios de aceptación claros
- Casos edge y errores
- Dependencias con otras features
Ejemplo de Output
# Spec: Autenticación de Usuario
## Descripción
El sistema debe permitir a usuarios registrarse
e iniciar sesión de forma segura.
## Criterios de Aceptación
- [ ] Usuario puede registrarse con email/password
- [ ] Password hasheado con bcrypt
- [ ] JWT generado al login exitoso
- [ ] Token expira en 24h
## Casos de Error
- Email duplicado: Error 409
- Credenciales inválidas: Error 401
3. /speckit.plan
Crea un plan técnico detallado de cómo implementar.
Uso
/speckit.plan [referencia a spec]
Qué Incluir
- Arquitectura técnica
- Decisiones de diseño y justificación
- Interfaces y contratos
- Estrategia de testing
Ejemplo de Output
# Plan: Autenticación
## Arquitectura
### Capas
1. **Domain**: User entity, AuthService interface
2. **Application**: RegisterUseCase, LoginUseCase
3. **Infrastructure**: BcryptHasher, JwtGenerator
## Interfaces
### AuthService
- register(email, password): User
- login(email, password): Token
- verify(token): User | null
## Decisiones
- JWT sobre sesiones: stateless, escalable
- Bcrypt cost 12: balance seguridad/performance
4. /speckit.tasks
Desglosa el plan en tareas ejecutables atómicas.
Uso
/speckit.tasks [referencia a plan]
Características de Buenas Tareas
- Atómicas: Una sola responsabilidad
- Verificables: Criterio claro de completitud
- Ordenadas: Dependencias explícitas
- Estimables: Scope definido
Ejemplo de Output
# Tasks: Autenticación
## Fase 1: Domain
- [ ] 1.1 Crear User entity
- [ ] 1.2 Definir AuthService interface
- [ ] 1.3 Definir Password value object
## Fase 2: Application
- [ ] 2.1 Implementar RegisterUseCase
- [ ] 2.2 Implementar LoginUseCase
- [ ] 2.3 Tests de casos de uso
## Fase 3: Infrastructure
- [ ] 3.1 Implementar BcryptHasher
- [ ] 3.2 Implementar JwtGenerator
- [ ] 3.3 Implementar UserRepository
5. /speckit.implement
Genera código automáticamente desde las especificaciones.
Uso
/speckit.implement [referencia a tasks]
Proceso
- Lee constitution para contexto
- Lee spec para requisitos
- Lee plan para arquitectura
- Ejecuta tasks secuencialmente
- Genera código según convenciones
Resultado
Código generado que:
- Sigue la constitution
- Cumple la spec
- Implementa el plan
- Completa las tasks
Flujo Completo
Usuario describe feature
↓
/speckit.constitution (si no existe)
↓
/speckit.specify "feature X"
↓
/speckit.plan "spec de feature X"
↓
/speckit.tasks "plan de feature X"
↓
/speckit.implement "tasks de feature X"
↓
Código listo