Aider: AI pair programming da terminale con integrazione git

Paul Gauthier rilascia Aider a maggio 2023: CLI Python per AI pair programming con auto-commit git, repo map tree-sitter, supporto OpenAI, Anthropic, DeepSeek, Ollama. Licenza Apache 2.0.

Open SourceAI Open SourceAiderPair ProgrammingCLIAgenticAI

Un tool CLI nato nel 2023

A maggio 2023 Paul Gauthier, ingegnere con un passato in Motorola, pubblica Aider, uno strumento da terminale per AI pair programming scritto in Python. Il progetto è tra i primi — nell’era immediatamente post-ChatGPT — a esplorare un modello d’uso in cui il modello linguistico non è un chatbot esterno, ma un collaboratore integrato nell’editor e nel sistema di controllo versione del progetto. La licenza è Apache 2.0.

Aider non include un’interfaccia grafica: il flusso di interazione avviene interamente nel terminale, con comandi testuali e diff di codice visualizzati inline. La scelta è deliberatamente vicina al modello di lavoro di uno sviluppatore Unix.

Integrazione git nativa

La caratteristica distintiva di Aider è l’integrazione diretta con git. Ogni modifica suggerita dal modello e accettata dall’utente viene tradotta in un commit automatico, con messaggio generato dal modello stesso. Questo approccio trasforma la cronologia git in un log dettagliato delle interazioni con l’AI e consente di revertire facilmente modifiche indesiderate con git reset o git revert.

Aider supporta il lavoro su branch: l’utente può creare un branch dedicato alla sessione di pair programming e fare merge quando il risultato è soddisfacente. Il tool gestisce automaticamente il diff tra versioni e lo usa come parte del contesto per il modello, evitando di reinviare l’intero file a ogni iterazione.

Repo map con tree-sitter

Per lavorare su codebase di grandi dimensioni, Aider introduce il meccanismo del repo map: una rappresentazione sintetica dell’intero repository che include solo i simboli più rilevanti (funzioni, classi, metodi pubblici) selezionati in base a un’analisi statica con tree-sitter. Il repo map viene passato al modello come contesto, dando una visione globale del progetto senza saturare il context window.

Questo approccio permette ad Aider di operare efficacemente su progetti con centinaia di file, un limite che blocca molti tool più semplici basati su concatenazione diretta di file nel prompt.

Modelli supportati e benchmark

Aider supporta OpenAI, Anthropic, DeepSeek, Ollama, OpenRouter e altri provider attraverso un’astrazione unificata. Il progetto mantiene un “aider code editing leaderboard” autopubblicato, in cui diversi modelli vengono valutati su un benchmark di refactoring controllati: applicare modifiche precise a file Python preservando la correttezza dei test unitari. La leaderboard è stata adottata dalla community come riferimento informale per confrontare modelli nel task specifico di code editing.

Link: aider.chat

Vuoi supporto? Sei sotto attacco? Stato dei servizi
Vuoi supporto? Sei sotto attacco? Stato dei servizi