spec-driven-development · metodología · flujo-de-cambio
📌 v0.0.22 · 2026-05
Spec Kit — Flujo de cambios spec-driven para SmallCountry¶
Sustituirá el proceso manual de proponer, planificar y ejecutar cambios en la infraestructura. Será el método oficial por el que cualquier modificación estructural de SmallCountry pasará de idea a despliegue.
Como usuario
Qué podrás hacer¶
- Proponer un cambio en
SmallCountry con un comando estructurado (
/speckit.specify) - Ver el plan técnico generado antes de que se ejecute nada
- Seguir el progreso de tu propuesta mediante tareas accionables
- Tener trazabilidad completa: spec → plan → tareas → implementación
Cómo accederás¶
| Plataforma | Cómo |
|---|---|
| Navegador | Vía Forgejo (forgejo-sc.duckdns.org/smallcountry/infra-core) |
| Terminal | specify CLI local |
| Hermes Agent | Comandos /speckit.* desde chat |
Primeros pasos¶
- Clonar el repo:
git clone forgejo-sc.duckdns.org/smallcountry/infra-core - Tener
uvinstalado yspecify-cli - Leer
docs/specs/flujo.mdpara entender el proceso - Proponer primer cambio con Hermes Agent o manualmente
Integración con otros servicios de SmallCountry¶
| Servicio | Relación |
|---|---|
| Forgejo | Spec Kit vivirá dentro del repo infra-core. Cada spec generará PRs en Forgejo |
| Hermes Agent | Ejecutará los comandos /speckit.*. Spec Kit estructurará, Hermes ejecutará |
| MkDocs | La documentación se actualizará como parte de las tareas de implementación |
| Ansible | Los planes técnicos referenciarán playbooks y roles Ansible |
Servicios que lo harán posible¶
- Spec Kit (CLI) — generará
.specify/con templates y constitución - Hermes Agent — ejecutor de los comandos spec-driven
- uv — instalador de Python para
specify-cli - Git — todo cambio será un commit versionado
Para el administrador
Datos del servicio¶
| LXC | N/A — herramienta CLI, no servicio persistente |
| Ubicación | ~/.local/bin/specify |
| Instalación | uv tool install specify-cli --from git+https://github.com/github/spec-kit.git@v0.0.22 |
Archivos que generará en el repo¶
.specify/
├── memory/
│ └── constitution.md ← Las 13 reglas Zen
└── templates/
├── spec-template.md
├── plan-template.md
└── tasks-template.md
specs/
└── 001-ejemplo/
├── spec.md
├── plan.md
└── tasks.md
Actualización¶
Para el arquitecto
Relaciones con otros servicios¶
flowchart LR
Arquitecto[Arquitecto] -->|/speckit.specify| Hermes[Hermes Agent]
Hermes -->|Genera spec| Specs[specs/]
Specs -->|PR| Forgejo[Forgejo]
Forgejo -->|Actions| ZenCheck[Zen-check CI]
ZenCheck -->|✅| Merge[Merge]
Merge -->|Actualiza| Docs[MkDocs]
Merge -->|Despliega| Ansible[Ansible]
Flujo de trabajo¶
flowchart LR
F1[1. Especificar<br>/speckit.specify] --> F2[2. Planificar<br>/speckit.plan]
F2 --> F3[3. Desglosar<br>/speckit.tasks]
F3 --> F4[4. Implementar<br>/speckit.implement]
| Fase | Comando | Output |
|------|---------|--------|
| Especificar | `/speckit.specify` | `specs/XXX-nombre/spec.md` |
| Planificar | `/speckit.plan` | `specs/XXX-nombre/plan.md` |
| Desglosar | `/speckit.tasks` | `specs/XXX-nombre/tasks.md` |
| Implementar | `/speckit.implement` | PR + cambios en el repo |
### Relación con los principios
- **Fuente única de verdad**: cada cambio nacerá como spec versionada en git
- **Presupuesto de complejidad**: la constitución Zen bloqueará specs que excedan límites
- **Conocimiento compartido**: las specs documentarán el porqué de cada decisión
- **Reconstruibilidad**: specs + ADRs permitirán entender y recrear cualquier cambio pasado