Eseguire un coding AI agent su un VPS
Guida all'installazione di Aider e Goose su VPS. Configura il terminale con tmux e connetti modelli Ollama per programmare senza interruzioni via SSH.
Perché eseguire un coding agent su un VPS
Un coding agent è uno strumento che legge il codebase, scrive modifiche ed esegue comandi per testarle, tutto tramite terminale. Eseguirne uno su un VPS offre tre vantaggi rispetto al laptop: continua a lavorare dopo la disconnessione, si trova direttamente accanto al codice e ai tool di build, e può comunicare con un modello ospitato localmente. Avviatelo all'interno di una sessione tmux per poter chiudere il laptop e riprendere il lavoro in seguito, seguendo lo stesso schema di eseguire Claude Code su un VPS con tmux.
Esistono due agenti basati su terminale da conoscere. Aider è l'opzione nativa per il terminale e focalizzata su git: effettua l'auto-commit di ogni modifica con un messaggio appropriato, mantenendo la cronologia pulita e ogni modifica reversibile. È uno dei coding agent da terminale più longevi, sebbene il ritmo dei suoi rilasci sia rallentato. Goose, di Block, è più ampio: un agente Apache-2.0 con un vasto ecosistema di estensioni e supporto per molti provider, inclusi i modelli locali Ollama; è ora sviluppato sotto la Linux Foundation's Agentic AI Foundation (AAIF). Aider è adatto a un workflow disciplinato e centrato su git; Goose è adatto a un assistente più generico con un ampio set di plugin.
Requisiti
È necessario un VPS con git, tmux e una versione recente di Python per Aider, oppure l'installer di Goose per Goose. È inoltre necessario un modello: una chiave API ospitata da un provider come Anthropic o OpenAI, oppure un modello locale servito da Ollama sullo stesso VPS. La soluzione self-hosted mantiene il codice sul proprio server e non ha costi per token, a patto di disporre di memoria sufficiente per un modello performante.
Installare ed eseguire Aider
Installa Aider in un ambiente isolato con pipx, che viene installato tramite apt poiché Ubuntu 24.04 blocca l'uso di pip install al di fuori di un ambiente virtuale (PEP 668). Successivamente, esegui Aider all'interno del progetto, in una sessione tmux per evitare la perdita di stato in caso di disconnessione:
sudo apt install pipx
pipx ensurepath
pipx install aider-chat
tmux new -s aider
cd ~/my-project
aiderNota sulle versioni: questa installazione funziona come descritto su Ubuntu 24.04. Su Ubuntu 26.04 l'installazione fallisce perché le dipendenze fissate di Aider includono una versione obsoleta di numpy che non è compatibile con Python 3.14 su 26.04. La soluzione consiste nel fornire ad Aider il proprio Python 3.12:
pipx install --python 3.12 --fetch-missing-python aider-chatpipx scarica un interprete standalone dedicato esclusivamente ad Aider e l'installazione si completa. Questo è un sintomo del rallentamento dei rilasci di Aider; se è un problema, Goose è l'opzione con manutenzione più attiva.
Una volta avviato, stacca la sessione con Ctrl-b seguito da d e l'agent continuerà a lavorare anche con il laptop chiuso; riattiva la sessione in seguito con tmux attach -t aider per leggere le modifiche apportate. Aider legge il repository, propone modifiche, le applica e ne effettua il commit di ciascuna; può includere file extra per il contesto quando una modifica riguarda più file. Poiché ogni modifica è un commit, annullare le azioni dell'agent è un semplice git revert, che funge da rete di sicurezza per un uso confortevole. Goose si installa con il suo script predefinito a riga singola e funziona in modo simile dal terminale, gestendo i task tramite le sue estensioni:
curl -fsSL https://github.com/aaif-goose/goose/releases/download/stable/download_cli.sh | bashModello ospitato o modello self-hosted
Un modello ospitato offre la massima qualità e non richiede hardware locale, ma comporta costi per token e il codice viene inviato al provider. I costi per token aumentano più velocemente di quanto ci si aspetti, poiché l'agent invia l'intera conversazione ad ogni turno. L'analisi di Claude Code su quanto costa realmente una lunga sessione dell'agent in token è applicabile anche qui, poiché Aider e Goose hanno la stessa modalità di fatturazione. Un modello self-hosted tramite Ollama mantiene tutto sul proprio server ed è gratuito dopo l'acquisto dell'hardware, ma un modello di coding utile richiede molta memoria. Questo è il compromesso da valutare: qualità e praticità contro privacy e costi.
Se si sceglie la soluzione self-hosted, la questione pratica è quale modello si adatti al server. Verifica le dimensioni prima di scaricare un modello da otto gigabyte su un sistema che non può ospitarlo:
Sicurezza: modifica file ed esegue comandi
Un coding agent non è passivo. Riscrive file e può eseguire comandi di build e test; pertanto, va trattato con la stessa cautela di qualsiasi processo capace di modificare il sistema. Tre abitudini coprono la maggior parte dei rischi. Lavora all'interno di un repository git, in modo che ogni modifica sia tracciata e reversibile (operazione che Aider esegue automaticamente). Esegui l'agent come utente normale non privilegiato, mai come root, seguendo il principio dei least-privilege users, in modo che un comando errato non possa compromettere l'intero sistema. Inoltre, proteggi il server stesso, poiché un VPS per coding è comunque un server pubblico: SSH con solo chiavi, firewall con policy default-deny e così via. La OpenClaw hardening guide adotta la stessa posizione per agent più autonomi, e i principi sono applicabili.
Per integrare un coding agent nel proprio workflow, costruire un AI agent con Claude mostra come un modello guidi i propri tool; eseguire Google Gemini CLI su un VPS è un'altra opzione da terminale, mentre self-hosting OpenHands rappresenta l'opzione autonoma più complessa. Il progetto open source più seguito in questo ambito ha ora una sua guida: eseguire OpenCode su un VPS lo configura utilizzando lo stesso pattern tmux e utente non privilegiato.
FAQ
Posso eseguire un coding agent con un modello locale invece di una API a pagamento?
Sì. Sia Aider che Goose funzionano con modelli locali serviti da Ollama, quindi è possibile eseguire un coding agent completamente self-hosted senza costi per token e senza inviare codice al server esterno. Il limite è la memoria: un modello abbastanza capace da scrivere codice utile richiede molta RAM o VRAM; verifica le specifiche della macchina prima di procedere.
Aider o Goose, quale dovrei usare?
Scegli Aider se il tuo workflow è centrato su terminale e git e desideri l'opzione più matura e con il minor overhead; effettua l'auto-commit di ogni modifica mantenendo la cronologia reversibile. Scegli Goose se desideri un assistente più ampio con un vasto ecosistema di estensioni e supporto per molti provider. Entrambi funzionano da terminale e con Ollama, quindi entrambi sono adatti a un VPS.
Quanta memoria mi serve per un modello di coding self-hosted?
Dipende dalla dimensione del modello e dal livello di quantizzazione. Un piccolo modello quantizzato può girare con pochi gigabyte, mentre un modello più potente richiede molta più memoria, e le finestre di contesto lunghe aumentano il fabbisogno. Usa lo strumento di dimensionamento sopra indicato per stimare la memoria necessaria per un determinato modello e lunghezza del contesto prima di scaricarlo.
È sicuro lasciare che un agente AI modifichi il mio codice ed esegua comandi?
È gestibile con le giuste abitudini. Mantieni il lavoro in un repository git affinché ogni modifica sia un commit reversibile, esegui l'agent come utente non privilegiato invece che come root e proteggi il VPS come faresti con qualsiasi server pubblico. Revisiona le modifiche che l'agent committa invece di fidarti ciecamente, specialmente per qualsiasi comando che intenda eseguire sul sistema.