Repo plantilla para el bootcamp Prompt & Commit: Desarrollo de aplicaciones con IA Generativa.
Durante el bootcamp construiréis una aplicación web interna para clasificar tickets de soporte usando IA generativa.
TriageBot permite:
- Crear tickets con
titleydescription. - Clasificarlos automáticamente con Claude en:
- Clasificarlos automáticamente con LLM en:
category:bug,feature_request,question,urgentpriority:P1,P2,P3tags: lista de etiquetas cortas.- Persistirlos en SQLite.
- Verlos en un tablero web con filtros.
- Ejecutar tests automáticos y CI en GitHub Actions.
| Capa | Herramienta |
|---|---|
| Lenguaje | Python 3.11+ |
| Backend | FastAPI |
| Datos | SQLite |
| Frontend | HTML + HTMX + Tailwind CDN |
| LLM | OpenRouter (gpt-oss-120b) vía SDK OpenAI |
| Tests | pytest |
| CI/CD | GitHub Actions |
| IDE + IA | VS Code + Claude Code |
git clone https://github.com/<tu-usuario>/triagebot-template.git
cd triagebot-template
python3 -m venv .venv
source .venv/bin/activate # macOS / Linux
# .venv\Scripts\activate # Windows
pip install -r requirements.txt
cp .env.example .envEdita .env y añade tu API key:
OPENROUTER_API_KEY=...Opcionalmente puedes ajustar usuarios demo y base de datos:
DATABASE_URL=sqlite:///triagebot.db
ADMIN_USER=admin
ADMIN_PASS=admin123
USER_USER=user
USER_PASS=user123Comprueba que .env está ignorado por Git:
git status.env no debe aparecer.
pytest -vAl clonar el repo plantilla, los tests de aceptación deben fallar. Eso es lo esperado: todavía no habéis implementado TriageBot.
uvicorn app.main:app --reloadAbre:
http://127.0.0.1:8000
Los detalles obligatorios están en:
BRIEF.md: briefing del cliente.SPEC.md: contrato funcional recomendado.CLAUDE.md: instrucciones del repo para Claude Code.tests/test_acceptance.py: los 5 tests obligatorios.
- Lo que no acaba en GitHub no existe.
- No se commitean API keys.
- Commit pequeño cada 20–30 minutos.
- Leed el diff antes de aceptar cambios de la IA.
- Si Claude propone una dependencia, verificad que existe antes de instalarla.
- Los tests son la red de seguridad.
Nombres: Mikel Emaldi
Metodología: Spec-Driven