Skip to content

Releases: mati-caliz/kerbo

kerbo 0.7.0

Choose a tag to compare

@github-actions github-actions released this 21 Oct 11:34

Full Changelog: v0.6.0...v0.7.0

kerbo 0.6.0

Choose a tag to compare

@mati-caliz mati-caliz released this 20 Oct 11:17

Más reglas universales, cada una con paridad medida contra la herramienta que reemplaza, también sobre código de terceros:

  • nesting-depth en TypeScript y Go (max-depth de ESLint, max-control-nesting de revive).
  • magic-number en los cuatro lenguajes (no-magic-numbers, MagicNumber de Checkstyle, mnd, PLR2004 de ruff).
  • short-name en los cuatro (id-length, LocalVariableName, varnamelen, los nombres ambiguos de ruff).
  • duplicate-code en los cuatro: CPD de PMD en Java y Python, dupl en Go, no-identical-functions y no-duplicated-branches de sonarjs en TypeScript.
  • commented-code en Python (ERA001 de ruff) y Go (commentedOutCode de gocritic).

Antitrampa completa: también avisa cuando un cambio afloja un umbral en una configuración o vacía un test.

Instalación: curl -fsSL https://kerbo.matiascaliz.com.ar/install.sh | sh

kerbo 0.5.0

Choose a tag to compare

@mati-caliz mati-caliz released this 19 Oct 21:16

Servidor LSP: kerbo lsp marca los problemas en el editor mientras escribís. En IntelliJ, con el plugin LSP4IJ (Community o Ultimate); también Neovim, Zed y cualquier editor con LSP. Ver el README.

Instalación: curl -fsSL https://kerbo.matiascaliz.com.ar/install.sh | sh

kerbo 0.4.0

Choose a tag to compare

@mati-caliz mati-caliz released this 19 Oct 21:10

Servidor MCP: kerbo mcp (stdio) con kerbo_check y kerbo_explain. En Claude Code: claude mcp add kerbo -- kerbo mcp.

Instalación: curl -fsSL https://kerbo.matiascaliz.com.ar/install.sh | sh

kerbo 0.3.0

Choose a tag to compare

@mati-caliz mati-caliz released this 19 Oct 21:05

Capa para agentes de IA:

  • Antitrampa (con --diff): supresiones agregadas, tests salteados o enfocados, tests borrados (por el neto del cambio: moverlos de archivo no avisa) y escapes de tipos. Sobre el árbol de sintaxis, sólo en líneas nuevas.
  • --format agent: JSON compacto con tope, trampas primero, id estable y pista de arreglo.
  • kerbo explain <regla>: por qué existe y cómo se arregla.
  • kerbo hook: hook PostToolUse de Claude Code que revisa cada archivo que el agente edita y le devuelve lo que encontró.

Instalación: curl -fsSL https://kerbo.matiascaliz.com.ar/install.sh | sh

kerbo 0.2.0

Choose a tag to compare

@mati-caliz mati-caliz released this 19 Oct 20:50

Lo mínimo para adoptarlo en un repo que ya existe:

  • kerbo.toml: presets (strict, recommended, minimal), umbrales por lenguaje, excepciones por ruta e ignorados, cada uno con su reason obligatorio.
  • Línea de base: kerbo baseline acepta lo que ya hay; kerbo check sólo reporta lo nuevo y lo que empeoró.
  • --diff <ref>: sólo los problemas en funciones que tocan líneas cambiadas.
  • --format sarif y una GitHub Action (uses: mati-caliz/kerbo@v0.2.0) que anota los problemas en el pull request.
  • --max regla=valor para probar un umbral desde la línea de comandos.

Instalación: curl -fsSL https://kerbo.matiascaliz.com.ar/install.sh | sh

kerbo 0.1.0

Choose a tag to compare

@mati-caliz mati-caliz released this 19 Oct 19:35

Primera versión: las cinco reglas universales (largo de archivo y de función, complejidad ciclomática y cognitiva, parámetros) en Java, TypeScript/JavaScript, Python y Go, contando igual que ESLint y sonarjs, ruff, Checkstyle y PMD y golangci-lint.

Instalación en Linux x86_64 (binario estático):

curl -fsSL https://kerbo.matiascaliz.com.ar/install.sh | sh

En macOS, Windows y otras arquitecturas: cargo install --git https://github.com/mati-caliz/kerbo --tag v0.1.0 --locked.