Skip to content

CLI & Dev Machine Reference

La Yastubo Dev Machine (CLI/TUI) y el Makefile orquestan el ciclo de vida del desarrollo. Esta referencia técnica detalla cada comando y atajo para un uso avanzado del ecosistema.


Diseñada con Textual (Python TUI) para centralizar las tareas asíncronas del backend.

PestañaPropósitoAtajo
InicioEstado general de servicios (Postgres, Redis, Python).1
MódulosInspección de la arquitectura modular de Yastubo.2
TestsLaboratorio interactivo de ejecución de pytest.3
DocsCentro de control de la documentación (Starlight).4
OpsMantenimiento: Migraciones, Seeders y Limpieza.5

El Makefile es el corazón de la automatización en Yastubo. Abstrae la complejidad de uv, docker, alembic y ruff.

  • make setup: Inicialización total del entorno (Instala uv, crea el .venv y genera el .env inicial).
  • make build: The Quality Gate. Ejecuta linting con ruff y la suite completa de pytest. Indispensable antes de un PR.
  • make smoke: Prueba rápida de conectividad a la Base de Datos y Redis.
  • make cli: Lanza la Yastubo Dev Machine (TUI).
  • make lint: Ejecuta el formateador y analizador estático ruff.
  • make test: Ejecuta todos los tests de forma silenciosa.
  • make test-interactive: Lanza el selector de tests para depuración dirigida.

En lugar de crear archivos manualmente, utiliza el panel de 📂 Módulos en la CLI para generar nuevos dominios de negocio.

Cuando solicitas un nuevo módulo (ej. partnerships), el CLI genera:

  • app/modules/partnerships/models.py (Esquemas de Base de Datos).
  • app/modules/partnerships/schemas.py (Pydantic / Validación).
  • app/modules/partnerships/service.py (Lógica de Negocio).
  • app/modules/partnerships/router.py (Endpoints de la API).
  • tests/modules/test_partnerships.py (Blueprint de pruebas Unitarias).

Al iniciar la TUI, el backend ejecuta diagnósticos automáticos que puedes supervisar en la pestaña Ops:

  1. Conexión DB: Verifica DATABASE_URL y disponibilidad del clúster de Postgres.
  2. Redis Cache: Valida la conectividad necesaria para las sesiones de IAM.
  3. Environment Sync: Compara el archivo .env local con el .env.example para detectar variables obsoletas o faltantes.