Costruisci un AI Code Reviewer locale con Ollama
La tua CI è verde, ma superficiale. Un collega potrebbe ignorare un bug semplice perché è troppo impegnato. Puoi creare un secondo paio di occhi utilizzando un LLM locale.
Puoi creare una CLI in TypeScript che revisiona il tuo git diff in staging prima del commit. In questo modo il tuo codice rimane privato. Non richiede chiavi API né provider cloud.
Come funziona lo strumento:
• Recupera il diff in staging usando git diff --cached.
• Invia il diff a Ollama con un prompt specifico.
• Richiedi un output in formato JSON e validalo con Zod.
• Stampa i risultati nel terminale.
• Impostalo come hook di pre-commit.
Scelte tecniche per risultati migliori:
• Usa --no-color per rimuovere i codici ANSI dal prompt.
• Usa -U3 per fornire tre righe di contesto al modello.
• Imposta la temperature a 0 per ottenere risultati deterministici.
• Usa un system prompt specifico per ignorare le preferenze di stile e di naming.
Concentra il modello su errori di logica, accessi a valori nulli e problemi di sicurezza. Digli cosa ignorare. Dire a un modello piccolo cosa non segnalare è più efficace che dirgli cosa cercare.
Un workflow pratico per i modelli locali:
• Usa qwen2.5-coder:7b per il tuo hook git.
• Usa qwen2.5-coder:1.5b per test locali rapidi.
• Blocca i commit solo in caso di bug ad alta severità.
• Lascia che i risultati a media e bassa severità siano solo consultivi.
I modelli locali non sono staff engineer. Possono mancare logiche complesse che si estendono su più file. Producono anche falsi positivi. Tuttavia, colgono i piccoli errori come await mancanti o operatori errati.
Usa questo strumento per intercettare bug trascurati prima che arrivino in una pull request. Risparmia tempo al tuo team e mantiene il codice pulito.
Community di apprendimento opzionale: https://t.me/GyaanSetuAi