Referencia completa de todos los comandos disponibles en Scavengr.
scavengr initCrea archivo de configuración .env interactivo.
scavengr init [OPTIONS]
| Opción | Descripción | Valor por Defecto |
|---|---|---|
--global |
Crear configuración global en ~/.scavengr.env |
false |
--help |
Mostrar ayuda | - |
# Configuración local
scavengr init
# Configuración global
scavengr init --global
scavengr extractExtrae metadatos de base de datos y genera archivo DBML.
scavengr extract -o OUTPUT [OPTIONS]
| Opción | Descripción | Requerido |
|---|---|---|
-o, --output |
Archivo DBML de salida | ✅ Sí |
--env-file |
Archivo de configuración | ❌ No |
--cache |
Habilitar caché de metadatos | ❌ No |
--force-refresh |
Invalidar caché y reextraer | ❌ No |
--help |
Mostrar ayuda | - |
# Extracción básica
scavengr extract -o schema.dbml
# Con configuración específica
scavengr extract -o schema.dbml --env-file prod.env
# Con caché habilitado (primera vez: crea caché)
scavengr extract --cache -o schema.dbml
# Usando caché (subsecuentes: ~90% más rápido)
scavengr extract --cache -o schema.dbml
# Forzar actualización de caché (si BD cambió)
scavengr extract --cache --force-refresh -o schema.dbml
# Ruta completa
scavengr extract -o /ruta/completa/mi-esquema.dbml
Características:
.scavengr_cache/ (auto-creado, ignorado por git)Uso:
# Primera extracción (crea caché)
scavengr extract --cache -o schema.dbml
# Tiempo: ~30 segundos
# Subsecuentes (usa caché)
scavengr extract --cache -o schema.dbml
# Tiempo: ~3 segundos (90% más rápido)
# Si la BD cambió, forzar actualización
scavengr extract --cache --force-refresh -o schema.dbml
Archivo DBML con:
scavengr validateValida sintaxis y estructura de archivos DBML.
scavengr validate -i INPUT [OPTIONS]
| Opción | Descripción | Requerido |
|---|---|---|
-i, --input |
Archivo DBML a validar | ✅ Sí |
--help |
Mostrar ayuda | - |
# Validación básica
scavengr validate -i schema.dbml
# Ruta completa
scavengr validate -i /ruta/completa/mi-esquema.dbml
✅ VALIDACIONES BÁSICAS: OK
- Archivo: Existe y se puede leer
- Sintaxis DBML: Correcta
⚠️ VALIDACIONES DE CALIDAD: 5 ADVERTENCIAS
[MySQL] 2 índices BTREE sin columnas → Serán inferidas
[PostgreSQL] 3 identificadores CamelCase → Serán escapados
✅ RESULTADO: Esquema procesable
scavengr dictionaryGenera diccionario de datos en Excel, CSV o JSON.
scavengr dictionary -i INPUT -o OUTPUT [OPTIONS]
| Opción | Descripción | Requerido |
|---|---|---|
-i, --input |
Archivo DBML de entrada | ✅ Sí |
-o, --output |
Archivo de salida | ✅ Sí |
-f, --format |
Formato (excel, csv, json) |
❌ No |
--help |
Mostrar ayuda | - |
# Excel (detecta por extensión)
scavengr dictionary -i schema.dbml -o diccionario.xlsx
# CSV
scavengr dictionary -i schema.dbml -o diccionario.csv
# JSON
scavengr dictionary -i schema.dbml -o diccionario.json
# Forzar formato
scavengr dictionary -i schema.dbml -o output.txt -f excel
| Campo | Descripción |
|---|---|
| Tabla | Nombre de la tabla |
| Columna | Nombre de la columna |
| Tipo de Dato | Tipo nativo de BD |
| Tamaño | Longitud/precisión |
| Nullable | Permite valores NULL |
| Primary Key | Es clave primaria |
| Foreign Key | Referencia a otra tabla |
| Default | Valor por defecto |
| Descripción | Generada automáticamente (80+ patrones) |
| Sensibilidad | CRÍTICO, ALTO, MEDIO, BAJO |
| Máscara Sugerida | Para datos sensibles |
| Observaciones | Warnings y recomendaciones |
| Ejemplo | Valores de ejemplo |
| Formato Regex | Patrón de validación |
| + 5 campos más | Índices, relaciones, estadísticas |
scavengr reportGenera reporte analítico con métricas de calidad.
scavengr report -i INPUT -o OUTPUT [OPTIONS]
| Opción | Descripción | Requerido |
|---|---|---|
-i, --input |
Archivo DBML de entrada | ✅ Sí |
-o, --output |
Archivo de salida | ✅ Sí |
-f, --format |
Formato (excel, json) |
❌ No |
--help |
Mostrar ayuda | - |
# Excel
scavengr report -i schema.dbml -o reporte.xlsx
# JSON
scavengr report -i schema.dbml -o reporte.json
5 hojas en Excel:
Disponibles para todos los comandos:
scavengr --version # Ver versión
scavengr --help # Ayuda general
# 1. Configurar
scavengr init
# 2. Extraer
scavengr extract -o schema.dbml
# 3. Validar
scavengr validate -i schema.dbml
# 4. Documentar
scavengr dictionary -i schema.dbml -o diccionario.xlsx
# 5. Analizar
scavengr report -i schema.dbml -o reporte.xlsx
# Producción
scavengr extract --env-file prod.env -o schema-prod.dbml
scavengr dictionary -i schema-prod.dbml -o dict-prod.xlsx
# Desarrollo
scavengr extract --env-file dev.env -o schema-dev.dbml
scavengr dictionary -i schema-dev.dbml -o dict-dev.xlsx
# Extraer en pipeline
scavengr extract -o schema.dbml --env-file ci.env
# Validar en PR
scavengr validate -i schema.dbml || exit 1
# Generar artefactos
scavengr dictionary -i schema.dbml -o artifacts/dictionary.xlsx
scavengr report -i schema.dbml -o artifacts/report.xlsx