Esegui un Agente AI Autonomo Direttamente nel Tuo Terminale con Zero
Mi ritrovo spesso esausto dal dover passare continuamente tra la finestra dell'IDE, il browser e il terminale solo per apportare modifiche basate sui suggerimenti delle reti neurali. La maggior parte delle soluzioni pronte all'uso sono legate a un abbonamento a pagamento specifico oppure richiedono di consegnare l'intero progetto a server di terze parti senza un controllo chiaro su cosa viene effettivamente inviato al cloud. Recentemente ho scoperto un progetto interessante chiamato Zero da parte del team Gitlawb. È un agente di coding basato sul terminale scritto in Go che gira direttamente sulla tua macchina con i modelli che preferisci.
Nessun vendor lock-in. Vuoi connettere un'Ollama locale o LM Studio per una privacy completa — vai pure. Hai bisogno di affidare un complesso task di refactoring a Claude 3.5 Sonnet, DeepSeek o Gemini — basta aggiungere la tua API key e sei pronto.
Cosa può fare l'agente e come si differenzia dalle alternative
Zero è progettato come strumento per sviluppatori che tengono al controllo. L'agente non si limita a generare snippet di testo in una chat — può esplorare codebase, modificare file, eseguire test e comandi terminale.
La differenza principale risiede nel suo approccio alla sicurezza e al controllo degli accessi. Per impostazione predefinita, l'agente può leggere file nella directory di lavoro, ma qualsiasi tentativo di scrivere fuori dal progetto, eseguire comandi shell pericolosi o accedere alla rete incontra un sistema di permessi.
L'utility funziona in due modalità:
- TUI interattiva con supporto temi, cambio modello al volo, visualizzazione diff e navigazione tra rami di conversazione.
- Modalità automatica tramite il comando
zero exec, che può essere incorporato in script bash o pipeline CI.
Tutte le sessioni vengono salvate localmente su disco. Puoi fermare il lavoro in qualsiasi momento, tornare a un task precedente tramite /resume, o creare un ramo isolato di una sessione con il comando /btw per fare una domanda secondaria senza ingombrare il contesto del dialogo principale.
Installazione e primo avvio
Zero può essere installato in diversi modi. Il più semplice è usare npm o lo script di installazione ufficiale.
Tramite npm:
npm install -g @gitlawb/zero
zero
Oppure tramite lo script di installazione per Linux e macOS:
curl -fsSL https://raw.githubusercontent.com/Gitlawb/zero/main/scripts/install.sh | bash
Per compilare dal codice sorgente, avrai bisogno di Go versione 1.26.5 o successiva:
git clone https://github.com/Gitlawb/zero.git
cd zero
go build -o zero ./cmd/zero
Al primo avvio, il comando zero esegue una procedura guidata di setup interattiva. Ti aiuta a selezionare un provider di modelli e verificare la connessione. Se stai usando API cloud, esporta semplicemente la chiave richiesta prima:
export ANTHROPIC_API_KEY="sk-ant-..."
# или
export OPENAI_API_KEY="sk-..."
Per i modelli locali, l'utility può rilevare automaticamente istanze Ollama in esecuzione tramite il comando zero providers detect.
Scenari d'uso quotidiani
L'interfaccia del terminale è reattiva e comoda. La TUI fornisce hotkey e comandi slash. Ad esempio, la rotazione dei permessi viene fatta attraverso Shift+Tab, mentre la selezione del modello viene chiamata con il comando /model.
/spec — составить и обсудить план изменений до правок кода
/image — прикрепить скриншот интерфейса или схемы
/compact — сжать контекст, если диалог стал слишком длинным
/add-dir — выдать агенту временные права на запись в соседнюю папку
Se un'interfaccia grafica non è necessaria, la modalità headless viene in soccorso. Diciamo che gli autotest sono falliti in uno dei tuoi pacchetti Go:
zero exec "fix the failing test in ./pkg"
Per task complessi, è comodo usare worktree git isolati così l'agente non tocca il tuo branch di lavoro finché non hai revisionato il risultato:
zero exec --worktree "try the migration in an isolated worktree"
Zero supporta anche l'output in streaming in formato JSONL tramite il flag --output-format stream-json, che semplifica la scrittura di wrapper e l'integrazione con servizi esterni.
Estensibilità tramite MCP, plugin e specifiche
Per un'ottimizzazione fine del comportamento del progetto, Zero legge i file di istruzioni AGENTS.md o ZERO.md direttamente dal repository. Se posizioni un tale file nella root del progetto, l'agente terrà conto degli standard di codifica del tuo team, della struttura delle directory e delle regole di formattazione dei commit.
Se gli strumenti integrati non sono sufficienti, il progetto supporta:
- Il MCP (Model Context Protocol) per connettere database esterni o servizi di terze parti.
- Plugin con hook per eventi di avvio sessione o esecuzione azioni (
beforeTool,afterTool). - Skill markdown personalizzate che aggiungono scenari di automazione specifici.
A chi tornerà utile Zero
Lo strumento piacerà agli sviluppatori che lavorano frequentemente su server remoti tramite SSH, amano le utility da terminale e non vogliono dipendere da plugin proprietari per editor. La sandbox rigorosa basata su seccomp Linux e la cronologia delle sessioni locale rendono Zero un'ottima scelta per lavorare con codice aziendale chiuso.
Puoi provare il progetto su qualsiasi piattaforma — la documentazione e il codice sorgente sono aperti sotto licenza MIT nella pagina del repository.
Progetti correlati