Debug
Debugging universal. Tests, FlowTrace, profiling, estrategias hibridas. Clasifica el bug y selecciona la estrategia optima.From its SKILL.md
npx -y skills add Rixmerz/flowtrace-debugger --skill debugAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
SKILL.md
6.4 KB, as published. Nobody here has run it
Debug
Framework de debugging universal multi-estrategia. Clasifica el tipo de bug y selecciona la herramienta optima: tests, FlowTrace, profiling, o combinaciones.
Subcomandos
Parsea $ARGUMENTS para determinar la accion:
- vacio o "help" -> Mostrar herramientas disponibles (nativas + FlowTrace)
- "debug [path]" -> Ciclo completo de debugging con workflow graph
- "profile [path]" -> Analisis de performance (FlowTrace o nativo)
- "test [path] [filter]" -> Detectar test framework y ejecutar tests
- "status [path]" -> Estado de FlowTrace en el proyecto (si aplica)
- "clean [path]" -> Limpiar logs de FlowTrace
Ejecucion
Para help (default):
Muestra las herramientas organizadas:
Universal Debugger - Multi-Strategy
NATIVAS (siempre disponibles):
Read, Glob, Grep — Leer y buscar codigo fuente
Bash — Ejecutar tests, profilers, build tools
Write, Edit — Modificar codigo (solo en fase fix)
TEST FRAMEWORKS (auto-detectados):
cargo test — Rust (Cargo.toml)
npm test / vitest — Node.js (package.json)
go test — Go (go.mod)
pytest — Python (pyproject.toml)
dotnet test — .NET (*.csproj)
rspec / rake test — Ruby (Gemfile)
FLOWTRACE MCP (cuando disponible):
AUTOMATIZACION:
flowtrace.detect — Detectar lenguaje y framework
flowtrace.init — Inicializar FlowTrace en proyecto
flowtrace.build — Compilar proyecto
flowtrace.execute — Ejecutar con instrumentacion
flowtrace.cleanup — Limpiar logs
flowtrace.status — Estado del proyecto
ANALISIS DE LOGS:
log_open — Cargar JSONL, obtener sessionId
log_schema — Descubrir campos y fila de ejemplo
log_search — Filtrar filas por substring
log.timeline — Eventos cronologicos
log.sample — Muestras representativas
log.topK — Top N valores de un campo
log_aggregate — Agrupar y calcular count/sum/avg/max/min
log.flow — Correlacionar eventos por claves compuestas
log.errors — Auto-detectar patrones de error
log.export — Exportar a CSV/JSON
log.expand — Recuperar datos completos de entradas truncadas
log_searchExpanded — Buscar con auto-expansion
DASHBOARD DE PERFORMANCE:
dashboard.open — Analizar archivo + URL de dashboard
dashboard.analyze — Metricas JSON de performance
dashboard.bottlenecks— Top N por score de impacto
dashboard.errors — Hotspots de errores
ESTRATEGIAS POR TIPO DE BUG:
Serializacion/Data — Roundtrip tests, schema validation
Logica/Flujo — Unit tests + assertions
Performance — FlowTrace profiling o profilers nativos
Concurrencia — Stress tests + sanitizers + FlowTrace timeline
Integracion — FlowTrace + request replay
Memoria — Heap profiling + sanitizers
Para debug [path]:
Sigue estas fases en orden, sin saltar ninguna:
- Entender el problema (read-only + tests)
- Reproducir el bug ejecutando tests
- Clasificar tipo de bug y seleccionar estrategia
- Observar con la estrategia seleccionada (tests / FlowTrace / hibrido)
- Analizar datos recopilados
- Formar hipotesis con evidencia
- Implementar fix quirurgico
- Verificar fix con tests + opcionalmente FlowTrace
- Reportar
Para profile [path]:
Analisis enfocado en performance:
- Detectar stack tecnologico del proyecto
- Si FlowTrace disponible y lenguaje soportado:
flowtrace.status-> verificar que hay logs- Si no hay logs: ejecutar setup + execute primero
dashboard.analyzecon path al jsonl -> metricas completasdashboard.bottleneckstop 10 -> metodos con mayor impactodashboard.errors-> hotspots de erroreslog_aggregatepor clase/metodo, metric avg durationMillis -> desgloselog.topKbyField durationMillis, k=20 -> outliers
- Si FlowTrace no disponible o lenguaje no soportado:
- Rust:
cargo bench,flamegraph,criterion - Node.js:
--prof,clinic.js,0x - Python:
cProfile,py-spy - Go:
pprof,go test -bench
- Rust:
- Presentar reporte de performance con recomendaciones
Para test [path] [filter]:
Detecta test framework y ejecuta tests:
- Detectar stack:
Cargo.toml->cargo test [filter]package.json-> buscar script "test", onpx vitest run [filter], onpx jest [filter]go.mod->go test ./... -run [filter]pyproject.toml->pytest [path] -k [filter]*.csproj->dotnet test --filter [filter]
- Ejecutar con Bash
- Parsear output: tests pasados, fallidos, errores
- Si hay fallos, mostrar detalle de cada test fallido
- Sugerir siguiente paso:
debugsi hay fallos complejos
Para status [path]:
flowtrace.statuscon projectPath (si FlowTrace disponible)- Reportar: inicializado?, config, tamano de logs, logs truncados
- Si FlowTrace no disponible, reportar: "FlowTrace MCP no conectado. Usa testing nativo."
Para clean [path]:
flowtrace.cleanupcon projectPath (si FlowTrace disponible)- Reportar: archivos eliminados, bytes liberados
Acceso a FlowTrace
FlowTrace se instala como plugin de Claude Code (ver plugin/), que trae su
MCP server incluido. Las tools quedan disponibles directamente:
log_open/log_search/log_aggregate/log_schematrace_tree/trace_find_error/trace_private_calls/trace_diff
Sin el plugin instalado, flowtrace.jsonl es JSONL plano: se lee con Read,
Grep y ./analyze-logs.sh.
Notas
- FlowTrace es OPCIONAL. El debugger funciona sin ningun MCP conectado.
- Para proyectos sin FlowTrace, el debugging se basa en: tests, Bash, Read/Grep.
- El MCP server de FlowTrace es opcional; si el usuario lo tiene, la ruta al servidor es local a su entorno (no asumir rutas absolutas de otra máquina).
- FlowTrace soporta: Node.js, Java, Python, Go, Rust, .NET
- Para lenguajes no soportados por FlowTrace: usa tests nativos y profilers
- Las trazas FlowTrace se generan en
flowtrace.jsonlen el directorio del proyecto - Siempre limpiar logs entre iteraciones para trazas limpias