Code Linter
El Code Linter es una herramienta que revisa el código fuente que le envíes y comprueba si la sintaxis está correcta en varios lenguajes de programación. Si encuentra errores, te devuelve un informe con los problemas encontrados. Es útil para asegurarte de que tu código no contiene errores de sintaxis antes de compilarlo o ejecutarlo.
¿Cómo funciona?
El componente utiliza los analizadores de Tree‑sitter, una tecnología que analiza el código fuente de forma rápida y precisa. Cuando le envías el código y seleccionas el lenguaje, el linter:
- Identifica el lenguaje que has elegido (por ejemplo, Python, JavaScript, Java, etc.).
- Aplica el parser de Tree‑sitter correspondiente a ese lenguaje.
- Revisa la estructura del código y detecta cualquier anomalía de sintaxis.
- Devuelve un resultado con los errores encontrados (si los hay) o indica que el código es válido.
Todo el procesamiento se realiza localmente dentro del sistema Nappai, por lo que no se envía tu código a servicios externos.
Entradas
Modo de Mapeo (Mapping Mode)
Este componente cuenta con un modo especial llamado Mapping Mode (Modo de Mapeo). Cuando activas este modo mediante el interruptor, se habilita una entrada adicional llamada Mapping Data y cada campo de entrada te ofrece tres formas diferentes de proporcionar datos:
- Fixed (Fijo): Escribes el valor directamente en el campo.
- Mapped (Mapeado): Conectas la salida de otro componente para usar su resultado como valor.
- Javascript: Escribes código Javascript para calcular el valor dinámicamente.
Esta flexibilidad te permite crear flujos de trabajo más dinámicos y conectados.
Campos de Entrada
- Programming Language: El lenguaje de programación que quieres validar. Puedes elegir entre php, javascript, python, typescript, csharp, go, java, c, cpp, swift, kotlin.
- Mapping Mode: Interruptor que habilita el modo de mapeo para procesar varios registros de datos en lote.
- Source Code: El código fuente que deseas validar. Puedes pegar el código directamente o usar un valor mapeado o generado por Javascript.
- Tool Name: El nombre que aparecerá cuando este componente se conecte como una herramienta para un agente. Sirve para identificar la herramienta en la interfaz del agente.
- Tool Description: Una descripción detallada de lo que hace esta herramienta. Ayuda al agente a decidir cuándo usarla.
- Tools arguments metadata: Metadatos que definen los argumentos que la herramienta acepta. Se usan cuando el componente se expone como una herramienta.
Salidas
- Lint Result: Un objeto de datos que contiene el informe de linting. Incluye los errores de sintaxis encontrados, la posición de cada error y un resumen de la validación.
- Tool: Un objeto de tipo Tool que representa la herramienta configurada. Se utiliza cuando el componente se conecta a un agente o a otro flujo de trabajo que necesita una herramienta.
Ejemplo de Uso
- Añade el componente “Code Linter” a tu flujo de trabajo en el dashboard.
- Selecciona el lenguaje (por ejemplo,
python
). - Activa “Mapping Mode” si quieres validar varios archivos a la vez. Si no, déjalo desactivado.
- Introduce el código en el campo “Source Code”. Puedes pegarlo directamente o usar un valor mapeado desde otro componente.
- Configura “Tool Name” y “Tool Description” si planeas usar el linter como una herramienta para un agente.
- Ejecuta el flujo. El componente devolverá dos salidas:
- En Lint Result verás un resumen de los errores de sintaxis (si los hay).
- En Tool tendrás la herramienta lista para que un agente la invoque cuando necesite validar código.
Tip: Si trabajas con varios archivos, activa “Mapping Mode” y conecta la salida de un componente que genere una lista de archivos a “Source Code” usando el modo Mapped. Así podrás validar todos los archivos en un solo paso.
Componentes Relacionados
- Code Formatter – Formatea tu código según las reglas de estilo del lenguaje seleccionado.
- Syntax Highlighter – Resalta la sintaxis del código para una visualización más clara en el dashboard.
- Code Analyzer – Analiza el código en busca de patrones de diseño y posibles mejoras de rendimiento.
Consejos y Mejores Prácticas
- Usa el modo de mapeo cuando necesites validar múltiples archivos en lote; evita ejecutar el linter varias veces.
- Selecciona el lenguaje correcto antes de enviar el código; un error de selección puede hacer que el linter no detecte errores reales.
- Revisa el “Lint Result” antes de continuar con la compilación o ejecución; corrige los errores para evitar fallos en tiempo de ejecución.
- Mantén el código limpio: elimina comentarios innecesarios antes de validar para reducir la cantidad de líneas que el linter debe procesar.
Consideraciones de Seguridad
- El código fuente se procesa localmente dentro del entorno de Nappai; no se envía a servicios externos.
- Evita enviar código que contenga información sensible (contraseñas, claves API, datos personales) a través de este componente si no estás seguro de que el entorno sea seguro.
- Si necesitas validar código que proviene de fuentes externas, considera usar el modo de mapeo para procesar los archivos en un entorno aislado antes de integrarlos en tu flujo principal.