Skip to content

Sistema de Plugins

RootCause permite extender sus capacidades mediante plugins externos que se ejecutan como procesos independientes y se comunican a través de JSON-RPC.

Uso Básico

Comandos de Gestión

bash
# Instalar plugin
rootcause plugin install ./mi-plugin
rootcause plugin install https://github.com/usuario/plugin.git

# Gestionar plugins
rootcause plugin list                    # Listar instalados
rootcause plugin remove nombre-plugin    # Eliminar
rootcause plugin verify ./plugin         # Verificar funcionamiento

# Crear nuevo plugin
rootcause plugin init ./mi-nuevo-plugin

Para más comandos, consultar la guía del módulo del CLI

Uso de plugins

bash
# Plugin individual
rootcause ./code --rules ./rules --plugin ./plugins/decodebase64

# Múltiples plugins con opciones
rootcause ./code --rules ./rules \
  --plugin decodebase64 \
  --plugin ts-eval \
  --plugin-opt decodebase64.mode=aggressive \
  --plugin-opt ts-eval.max_lines=2000

Flujo de Ejecución

Tipos de Plugins

TipoCapacidadPropósito
DiscoverdiscoverAñade rutas adicionales o excluye directorios
TransformtransformModifica contenido antes del análisis (decodificar, descomprimir)
AnalyzeanalyzeProcesa archivos y emite hallazgos
RulesrulesProporciona reglas adicionales
ReportreportGenera formatos de salida personalizados

Ubicación de Plugins

RootCause busca plugins en este orden:

  1. --plugin ./ruta/explicita
  2. ./.rootcause/plugins/*

RootCause - Modular Static Analysis Engine