Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

11 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

SDD Development Template

Template completo para desarrollo con agentes de IA (Claude, Gemini, OpenAI, Ollama) que soporta proyectos Greenfield y Brownfield con HITL (Human-in-the-Loop) y auditorΓ­a completa de decisiones de IA.

πŸš€ CaracterΓ­sticas

  • βœ… Stack SDD completo con Docker Compose (PostgreSQL + pgvector, Redis, Ollama, Dev Container)
  • βœ… Specify CLI instalado desde GitHub para Spec-Driven Development
  • βœ… Agentes Claude pre-configurados para Spec, Plan, Dev y Review
  • βœ… Visual Workflows con cc-wf-studio para diseΓ±ar workflows con drag-and-drop
  • βœ… LLM Local con Ollama para privacidad total y cero costos de API
  • βœ… Agent Skills para generaciΓ³n de cΓ³digo, anΓ‘lisis de specs y recuperaciΓ³n de contexto
  • βœ… HITL Checkpoints para aprobaciΓ³n manual en puntos crΓ­ticos
  • βœ… Sistema de AuditorΓ­a completo con logging de decisiones de IA
  • βœ… Workflows listos para Greenfield y Brownfield (4 ejemplos incluidos)
  • βœ… MCP Integration para herramientas externas (GitHub, Slack, etc.)
  • βœ… MΓΊltiples proveedores de IA: Claude (Anthropic), Gemini (Google), OpenAI, Ollama (local)
  • βœ… Mejores prΓ‘cticas de Humanlayer, 12-Factor Agents y ACE-FCA

πŸ“‹ Requisitos Previos

  • Docker y Docker Compose instalados
  • Git configurado
  • API Keys (al menos una):
    • Anthropic (Claude) - Recomendado
    • Google Gemini - Opcional
    • OpenAI - Opcional
    • Ollama - Sin API key (local)

🏁 Quick Start

OpciΓ³n 1: Proyecto Greenfield (desde cero)

# 1. Clonar este template
git clone https://github.com/vtomasv/sdd-dev-template.git mi-proyecto
cd mi-proyecto

# 2. Configurar variables de entorno
cp .env.example .env
# Editar .env con tus API keys

# 3. Inicializar proyecto greenfield
./scripts/01_init-greenfield.sh

# 4. Levantar stack completo
docker compose up -d

# 5. Entrar al contenedor dev
docker compose exec dev bash

# 6. Verificar herramientas instaladas
specify --version
opencode --version
claude --version
gemini --version

# 7. Inicializar proyecto con Specify
specify init . --ai claude

# 8. Comenzar desarrollo
opencode

OpciΓ³n 2: Proyecto Brownfield (repo existente)

# 1. Clonar este template
git clone https://github.com/vtomasv/sdd-dev-template.git mi-proyecto
cd mi-proyecto

# 2. Configurar variables de entorno
cp .env.example .env
# Editar .env con tus API keys

# 3. Inicializar proyecto brownfield con contexto
./scripts/02_init-brownfield.sh https://github.com/tu-usuario/tu-repo.git /path/to/context.md

# 4. Levantar stack completo
docker compose up -d

# 5. Entrar al contenedor dev
docker compose exec dev bash

# 6. Continuar desarrollo con contexto cargado
specify init . --ai claude
opencode

πŸ“š DocumentaciΓ³n

GuΓ­as Principales

Herramientas EspecΓ­ficas

Scripts Disponibles

  • scripts/01_init-greenfield.sh - Inicializar proyecto desde cero
  • scripts/02_init-brownfield.sh - Inicializar proyecto existente
  • scripts/04_audit-init.sh - Configurar sistema de auditorΓ­a
  • scripts/05_setup-ollama.sh - Configurar Ollama con modelos recomendados

πŸ—οΈ Arquitectura

β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚          IDEs con soporte de IA                          β”‚
β”‚  Claude Code | OpenCode | Gemini CLI | cc-wf-studio     β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                     β”‚
                     β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚                  Dev Container                           β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”             β”‚
β”‚  β”‚ Specify  β”‚  β”‚ OpenCode β”‚  β”‚  Claude  β”‚             β”‚
β”‚  β”‚   CLI    β”‚  β”‚    CLI   β”‚  β”‚   CLI    β”‚             β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜             β”‚
β”‚                                                          β”‚
β”‚  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”    β”‚
β”‚  β”‚         Agent Skills & Workflows                β”‚    β”‚
β”‚  β”‚  β€’ Spec Agent    β€’ Plan Agent                   β”‚    β”‚
β”‚  β”‚  β€’ Dev Agent     β€’ Review Agent                 β”‚    β”‚
β”‚  β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜    β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
             β”‚
             β–Ό
β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
β”‚  PostgreSQL + pgvector    β”‚    Redis Cache              β”‚
β”‚  (Contexto + Embeddings)  β”‚    (Sesiones)               β”‚
β”‚                            β”‚                             β”‚
β”‚  Ollama (Local LLM)        β”‚    Adminer (DB UI)          β”‚
β”‚  (Privacidad total)        β”‚    (localhost:8080)         β”‚
β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜

πŸ”„ Workflows

Greenfield Workflow

Start β†’ Spec Agent β†’ [HITL: Approve Spec] β†’ Plan Agent β†’ 
[HITL: Approve Plan] β†’ Dev Agent β†’ [HITL: Review Code] β†’ 
Audit Log β†’ End

Brownfield Workflow

Start β†’ Context Analyzer β†’ [HITL: Validate Context] β†’ 
Spec Agent (con contexto) β†’ [HITL: Approve Spec] β†’ 
Plan Agent β†’ [HITL: Approve Plan] β†’ Dev Agent β†’ 
[HITL: Review Code] β†’ Audit Log β†’ End

Workflows Visuales (cc-wf-studio)

4 workflows de ejemplo incluidos en .claude/workflows/:

  1. spec-generation.json - GeneraciΓ³n de especificaciones con HITL
  2. code-review.json - RevisiΓ³n automΓ‘tica de cΓ³digo con quality gate
  3. mcp-integration.json - IntegraciΓ³n con GitHub y Slack vΓ­a MCP
  4. local-llm-workflow.json - Procesamiento privado con Ollama

πŸ› οΈ Comandos Útiles

GestiΓ³n de Servicios

# Ver logs de servicios
docker compose logs -f postgres redis ollama dev

# Verificar estado de servicios
docker compose ps

# Reiniciar servicios
docker compose restart

# Rebuild del dev container (despuΓ©s de cambios)
docker compose build dev --no-cache
docker compose up -d

Herramientas de Desarrollo

# Verificar instalaciΓ³n de herramientas
docker compose exec dev bash -c "specify check"

# Inicializar proyecto con Specify
docker compose exec dev bash -c "specify init . --ai claude"

# Usar Ollama localmente
docker compose exec dev bash -c "ollama list"
docker compose exec dev bash -c "ollama run llama3.2"

# Abrir cc-wf-studio (desde VSCode)
code .claude/workflows/spec-generation.json

Sistema HITL

# Ver checkpoints pendientes
docker compose exec dev python src/skills/hitl_checkpoint.py list

# Aprobar checkpoint
docker compose exec dev python src/skills/hitl_checkpoint.py approve <checkpoint_id>

# Rechazar checkpoint
docker compose exec dev python src/skills/hitl_checkpoint.py reject <checkpoint_id>

Sistema de AuditorΓ­a

# Ver logs de auditorΓ­a recientes
docker compose exec dev python src/audit/logger.py --show-recent

# Analizar contexto de repo brownfield
docker compose exec dev python scripts/utils/context-analyzer.py /path/to/repo

# Consultar auditorΓ­a en PostgreSQL
docker compose exec postgres psql -U sdd -d sdd_db -c "SELECT * FROM audit_log ORDER BY timestamp DESC LIMIT 10;"

πŸ“Š Sistema de AuditorΓ­a

Todas las decisiones de IA son registradas en PostgreSQL:

-- Ver ΓΊltimas decisiones
SELECT * FROM audit_log ORDER BY timestamp DESC LIMIT 10;

-- Ver decisiones por agente
SELECT agent_name, COUNT(*) FROM audit_log GROUP BY agent_name;

-- Ver checkpoints HITL
SELECT * FROM hitl_checkpoints WHERE status = 'pending';

-- Ver decisiones con contexto
SELECT agent_name, decision, context, confidence 
FROM audit_log 
WHERE confidence < 0.8 
ORDER BY timestamp DESC;

πŸ”§ Herramientas Incluidas

CLIs de IA

  • Specify CLI (v0.0.90) - Spec-Driven Development
  • Claude Code - Anthropic CLI
  • Gemini CLI - Google CLI
  • OpenCode - OpenAI CLI

Workflows Visuales

  • cc-wf-studio - Editor drag-and-drop de workflows

LLM Local

  • Ollama - 15 modelos recomendados (llama3.2, codellama, mistral, etc.)

Base de Datos

  • PostgreSQL 16 con pgvector
  • Redis 7 para cache
  • Adminer para gestiΓ³n visual

🀝 Contribuir

Este template estΓ‘ diseΓ±ado para ser extensible. Para agregar nuevos agentes o skills:

  1. Crear agente en .claude/agents/
  2. Crear skill en src/skills/
  3. Actualizar workflows en .claude/workflows/
  4. Documentar en docs/
  5. Hacer PR al repositorio

πŸ“ Changelog

v1.0.0 (2026-01-21)

  • βœ… Template inicial con stack SDD completo
  • βœ… IntegraciΓ³n de cc-wf-studio para workflows visuales
  • βœ… IntegraciΓ³n de Ollama para LLM local
  • βœ… CorrecciΓ³n de instalaciΓ³n de Specify CLI desde GitHub
  • βœ… RemociΓ³n de referencias a Google Antigravity (no disponible)
  • βœ… Fixes de compatibilidad macOS/Linux (sed, npm permisos)
  • βœ… 4 workflows de ejemplo incluidos
  • βœ… Sistema HITL completo
  • βœ… Sistema de auditorΓ­a completo
  • βœ… DocumentaciΓ³n exhaustiva (7 guΓ­as)

πŸ“ Licencia

MIT License - Ver LICENSE para mΓ‘s detalles.

πŸ”— Referencias

MetodologΓ­as y Mejores PrΓ‘cticas

Herramientas

πŸ’¬ Soporte

Para preguntas o problemas:

🌟 Agradecimientos

Este template integra las mejores prΓ‘cticas de:

  • GitHub Spec Kit team
  • Humanlayer community
  • Breaking Brake (cc-wf-studio)
  • Ollama team
  • Anthropic, Google, OpenAI

ΒΏListo para comenzar? β†’ QUICKSTART.md

About

Portable Spec-Driven Development (SDD) template with Docker Compose, Claude/Gemini/OpenAI agent-ready workflows, brownfield/greenfield bootstrapping, and Human-in-the-Loop (HITL) guardrails for safe, scalable coding.

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages