Claude su Linux: app desktop e CLI
Scopri cosa funziona davvero su Linux: app desktop beta via apt, Claude Code CLI, plugin per editor e piani a pagamento compatibili con ogni componente.
Quali componenti di Claude funzionano nativamente su Linux oggi
Claude su Linux funziona attraverso quattro componenti distinti e, ad agosto 2026, tutti e quattro sono utilizzabili su una normale macchina Ubuntu o Debian. L'app desktop si installa dal repository apt di Anthropic ed è in beta. La CLI Claude Code (interfaccia della riga di comando) è un binario compilato e funziona su un numero maggiore di distribuzioni rispetto all'app desktop. L'app web disponibile su claude.ai richiede soltanto un browser, mentre l'API è un endpoint HTTPS che si richiama dal proprio codice.
La beta desktop per Linux non include due funzioni disponibili su macOS e Windows: Computer Use, con cui Claude controlla le applicazioni sullo schermo, e la dettatura vocale. Anthropic indica entrambe come non ancora disponibili su Linux. La CLI dispone di una propria dettatura vocale, quindi la limitazione riguarda l'app desktop e non Claude nel suo complesso.
La disponibilità cambia nel tempo. Considerate quindi questa pagina una descrizione dei componenti disponibili e verificate lo stato attuale prima di basare su di esso la vostra pianificazione. L'ultima sezione elenca le pagine da controllare.
Installare l'app desktop Claude su Ubuntu o Debian
I requisiti documentati sono Ubuntu 22.04 o versioni successive, oppure Debian 12 o versioni successive, su x86_64 (che dpkg chiama amd64) o arm64. Altre distribuzioni basate su Debian potrebbero funzionare, ma non sono testate. Per Fedora e RHEL non è ancora disponibile alcun pacchetto; su questi sistemi è quindi necessario usare la CLI o il browser.
Installare l'app dal repository apt invece di usare un file .deb scaricato. L'app Linux non dispone di un proprio programma di aggiornamento, quindi le nuove versioni arrivano soltanto tramite il gestore dei pacchetti. La registrazione del repository consente a apt upgrade di trovarle.
sudo apt install curl gnupg
sudo curl -fsSLo /usr/share/keyrings/claude-desktop-archive-keyring.asc \
https://downloads.claude.ai/claude-desktop/key.asc
gpg --show-keys /usr/share/keyrings/claude-desktop-archive-keyring.ascgpg --show-keys dovrebbe stampare l'impronta digitale 31DDDE24DDFAB679F42D7BD2BAA929FF1A7ECACE. Confrontarla prima di registrare il repository, perché una chiave di firma non verificata viene considerata attendibile senza controllo. Se gpg segnala che il file non contiene dati OpenPGP validi, il download non è riuscito e apt update in seguito fallisce con NO_PUBKEY BAA929FF1A7ECACE.
La registrazione del repository consiste in una sola riga deb scritta in /etc/apt/sources.list.d/claude-desktop.list. Copiare quella riga dalla pagina di installazione Linux di Anthropic, code.claude.com/docs/en/desktop-linux, esattamente come è riportata. L'indirizzo del repository è la parte della procedura più soggetta a modifiche. Digitare la riga a memoria può lasciare E: Unable to locate package claude-desktop nel terminale. Leggere la riga prima di incollarla: arch=amd64,arm64 impedisce ad apt di trovare pacchetti per qualsiasi altra architettura, mentre signed-by= indica il file del keyring appena verificato. In questo modo la chiave è limitata a questo repository, invece di essere considerata attendibile per tutto ciò che apt legge.
sudo apt update && sudo apt install claude-desktopAvviarla dal launcher delle applicazioni oppure eseguire claude-desktop in un terminale. Accedere con il proprio account claude.ai oppure tramite il sistema SSO (single sign-on) dell'organizzazione, se configurato dall'azienda. L'app desktop non accetta una chiave API di Claude Console: l'autenticazione basata su chiave è una funzionalità della CLI.
E: Unable to locate package claude-desktop indica che apt non ha mai letto il repository. cat /etc/apt/sources.list.d/claude-desktop.list dovrebbe mostrare la riga deb appena scritta, mentre dpkg --print-architecture dovrebbe stampare amd64 o arm64, perché non sono pubblicati pacchetti per altre architetture. Gli aggiornamenti arriveranno quindi insieme agli altri aggiornamenti del sistema, da sudo apt update && sudo apt upgrade.
Ciò che esiste solo in un browser
claude.ai funziona in qualsiasi browser aggiornato su qualunque distribuzione, quindi è la soluzione per Fedora, RHEL, Arch, openSUSE e tutte le altre distribuzioni per cui non esiste un pacchetto. Dal browser è inoltre disponibile Claude Code sul web: la sessione viene eseguita nel cloud di Anthropic anziché sul computer locale e utilizza sempre le credenziali del tuo abbonamento.
È importante comprendere il limite del browser. Una sessione cloud non può leggere i file presenti sul tuo server né eseguire comandi su di esso. Per eseguire operazioni sul computer locale serve un software installato su quel computer, cioè la CLI o l'app desktop.
Cosa offre la CLI che l’app web non offre
Avvia claude in una directory e il comando opera su quella directory. Questa è la differenza, da cui deriva tutto il resto.
- Legge e modifica i file nella directory di lavoro e mostra ogni modifica prima di applicarla.
- Esegue i comandi shell approvati dall’utente. Può quindi compilare un progetto, eseguire una suite di test, leggere un log o controllare un servizio direttamente sul server.
- Funziona senza una sessione interattiva:
claude -p "read the nginx error log and summarise it"stampa una risposta e termina. È il modo da usare in un cron job o in una pipeline. - Collega i server MCP (model context protocol) tramite
claude mcp add. In questo modo il modello dispone di strumenti che vanno oltre il filesystem. - Funziona anche dove non è presente alcun desktop grafico. È il caso di ogni VPS (virtual private server) che si noleggia.
Quest’ultimo aspetto spiega perché una guida per server deve occuparsi della CLI. Un server noleggiato dispone di SSH (secure shell) e di nient’altro, quindi il terminale è l’unica interfaccia disponibile per lavorare sul server. L’esecuzione in questo modo richiede regole specifiche, descritte in dettaglio da eseguire Claude Code su una VPS all’interno di tmux. usare Claude per le attività quotidiane di amministrazione dei sistemi descrive invece le attività che conviene affidargli.
Le integrazioni con gli editor si collocano tra queste due modalità. L’estensione per VS Code richiede VS Code 1.94.0 o versione successiva e offre un pannello grafico all’interno dell’editor, con visualizzazione delle differenze e revisione del piano. Include una copia privata della CLI per quel pannello e non inserisce claude nel PATH. Per questo, per digitare claude nel terminale integrato è comunque necessaria l’installazione standalone. Gli editor basati su VS Code installano la stessa estensione dal registro Open VSX; è disponibile anche un plugin per JetBrains.
Servono Node.js per eseguire Claude Code su Linux?
Non con il metodo di installazione consigliato. L’installer nativo scarica un binario compilato, che non viene eseguito tramite Node.js.
curl -fsSL https://claude.ai/install.sh | bash
claude --versionclaude --version dovrebbe stampare un numero di versione, ad esempio 2.1.211 (Claude Code). Se qualcosa non è corretto, esegui claude doctor. Il comando stampa informazioni diagnostiche di sola lettura sull’installazione e sui file delle impostazioni, senza avviare una sessione.
Node.js è necessario solo per il metodo npm. A partire dalla versione del pacchetto 2.1.198, il pacchetto npm richiede Node.js 22 o versioni successive. Con una versione precedente di Node.js, npm stampa un avviso EBADENGINE invece di interrompersi. Il pacchetto include infatti lo stesso binario nativo come dipendenza specifica per la piattaforma e lo collega nella posizione prevista.
npm install -g @anthropic-ai/claude-codeNon eseguire il comando con sudo. La documentazione sconsiglia sudo npm install -g perché crea file di proprietà di root nel prefisso globale di npm. Di conseguenza, la successiva installazione o il successivo aggiornamento senza privilegi termina con un errore di autorizzazione. Quando la directory globale di npm non è scrivibile, l’aggiornamento automatico in background smette di funzionare e claude doctor elenca le soluzioni.
Anthropic pubblica inoltre repository di pacchetti firmati per Debian, Fedora, RHEL e Alpine. In questo modo sudo apt install claude-code funziona in modo analogo al pacchetto desktop, con una propria chiave di firma disponibile in https://downloads.claude.ai/keys/claude-code.asc.
Installazione per utente o a livello di sistema?
L'installer nativo esegue un'installazione per utente. Inserisce un launcher in ~/.local/bin/claude come symlink a ~/.local/share/claude/versions/, non richiede root e si aggiorna in background. Ogni utente della macchina dispone di una copia separata, che può avere una versione diversa.
L'installazione tramite package manager è a livello di sistema. Un singolo binario serve tutti gli utenti, richiede root e non viene aggiornato automaticamente tramite Claude Code. Per aggiornarlo, esegui sudo apt update && sudo apt upgrade claude-code, lo stesso comando che usi già per il resto del sistema.
Scegli l'installazione per utente su una macchina a cui accedi con il tuo account. Questo copre la maggior parte dei casi d'uso sui VPS. Scegli l'installazione tramite package manager su un server condiviso o su un'immagine di macchina, quando vuoi usare una sola versione per tutti e aggiornarla secondo una pianificazione controllata. In un'installazione nativa, due impostazioni in ~/.claude/settings.json determinano il comportamento degli aggiornamenti:
{
"autoUpdatesChannel": "stable",
"env": {
"DISABLE_AUTOUPDATER": "1"
}
}Il canale stable usa una release vecchia di circa una settimana e salta le release con regressioni rilevanti. DISABLE_AUTOUPDATER arresta soltanto il controllo in background. claude update continua quindi a funzionare e puoi decidere quando installare una nuova versione. Questo è importante su un server in cui un'attività di lunga durata viene eseguita senza supervisione e vuoi evitare che il binario cambi mentre è in esecuzione.
Accedere tramite SSH e mantenere attiva la sessione
La prima volta che si esegue la CLI su un server noleggiato si presentano due problemi specifici di Linux. Il flusso di accesso richiede un browser, ma sul server non è disponibile. Se la connessione SSH si interrompe, anche il lavoro in corso viene interrotto.
tmux risolve il secondo problema. Una sessione tmux appartiene al server tmux sulla macchina remota, non alla connessione. Pertanto, se il collegamento si interrompe, il processo continua a essere eseguito.
tmux new -s claude
claudeScollegarsi con Ctrl-b, quindi d, e tornare in seguito con tmux attach -t claude.
Il login è il primo problema. Eseguire claude per ottenere un URL di autorizzazione. Aprire l'URL nel browser del proprio computer. Dopo l'accesso, il browser mostra un codice di login invece di reindirizzare alla pagina successiva, perché il browser del laptop non può raggiungere il server callback avviato da Claude Code sull'indirizzo di loopback della macchina remota. Incollare il codice nel terminale, al prompt Paste code here if prompted. Il terminale mostra Login successful.
Per una sessione che deve avviarsi senza supervisione, claude setup-token apre la stessa procedura di autorizzazione nel browser e stampa nel terminale un token OAuth valido per un anno. Il token non viene salvato in alcun file. Copiarlo e impostarlo nel punto necessario.
export CLAUDE_CODE_OAUTH_TOKEN=your-tokenIl token richiede un piano a pagamento e può effettuare soltanto richieste ai modelli. Trattarlo come una password con validità di un anno. Dove conservarlo e come impedire a un agente di leggerlo nuovamente è descritto in tenere i secret fuori dalla portata degli agenti AI.
I server con poche risorse presentano un ulteriore problema. L'installazione richiede circa 512 MB di memoria libera. Il requisito hardware documentato per l'esecuzione è almeno 4 GB di RAM. Su un'istanza da 1 GB, quindi, il kernel OOM killer interrompe l'installazione:
Setting up Claude Code...
Installation was killed before it could finish (exit code 137). This usually means the system ran out of memory.Aggiungere lo swap, quindi eseguire nuovamente l'installer. Lo swap è spazio su disco che il kernel usa come memoria aggiuntiva quando la RAM non è sufficiente. È molto più lento della RAM, ma basta per completare un'installazione.
sudo fallocate -l 2G /swapfile
sudo chmod 600 /swapfile
sudo mkswap /swapfile
sudo swapon /swapfileswapon abilita il file soltanto per questo boot. Aggiungere una riga per /swapfile a /etc/fstab per riattivarlo dopo un riavvio. Le altre misure da applicare prima di consentire a un agente di eseguire comandi su un server in produzione sono descritte in eseguire Claude Code in sicurezza su un VPS.
Dove si trovano le credenziali di Claude su Linux
Su Linux, /login scrive la credenziale in ~/.claude/.credentials.json con la modalità file 0600. macOS inserisce la stessa credenziale nel portachiavi cifrato, quindi un'abitudine acquisita su Mac non è applicabile: su Linux il token è un file in chiaro nella home directory e ogni processo eseguito con il proprio account può leggerlo. Impostando CLAUDE_CONFIG_DIR, il file viene spostato nella directory indicata.
Da questo derivano due conseguenze. Un backup di /home contiene un accesso ancora valido, quindi copiarlo su una macchina condivisa consegna l'account a chiunque altro possa leggerlo. Inoltre, un'immagine della macchina creata da un sistema su cui è stato effettuato l'accesso include quelle credenziali in ogni istanza clonata da essa. Eseguire /logout prima di creare uno snapshot.
La precedenza delle credenziali può creare problemi a chi dispone contemporaneamente di un abbonamento e di una API key. Quando ANTHROPIC_API_KEY è impostata nella shell, Claude Code la usa dopo la conferma; l'abbonamento resta quindi inutilizzato, mentre la chiave viene addebitata in base ai token. /status mostra quale credenziale è attiva, mentre unset ANTHROPIC_API_KEY riporta all'accesso tramite abbonamento.
Gli accessi scadono. Nei tre giorni precedenti alla scadenza, la riga di avvio mostra Your login expires in 3 days; questo avviso non blocca mai una richiesta. Dopo la scadenza, ogni richiesta non va a buon fine con Login expired · Please run /login. È importante saperlo prima di lasciare una sessione non presidiata in esecuzione durante un fine settimana: la sessione smette di avanzare e non può recuperare autonomamente.
Una sola sottoscrizione Claude copre tutto?
Un unico piano a pagamento copre tutte le modalità di utilizzo con lo stesso accesso. Un account Pro, Max, Team o Enterprise consente di accedere a claude.ai nel browser, all'app desktop, alla CLI e all'estensione per VS Code. In tutti i casi si utilizza la stessa sottoscrizione. Anche la quota di utilizzo è condivisa, quindi una sessione CLI lunga sul server riduce la quota disponibile nell'app desktop. Quando una delle modalità di utilizzo rifiuta le richieste, è necessario verificare quale finestra del limite è stata raggiunta e come procedere. Il piano gratuito di claude.ai non include l'accesso a Claude Code. La CLI e le funzioni Claude Code dell'app desktop richiedono quindi un piano a pagamento oppure un account Claude Console.
L'API è un prodotto distinto, con una fatturazione diversa. Un account Console addebita i token effettivamente inviati. Questo modello è adatto a un servizio che si sta sviluppando, non all'uso interattivo da un terminale. Impostando ANTHROPIC_API_KEY si sposta la CLI su questo modello di fatturazione. È una scelta esplicita, non un comportamento di ripiego.
I prezzi e i limiti dei piani cambiano troppo spesso per essere riportati qui. Due pagine mostrano i valori aggiornati: quanto costa effettivamente Claude Code e quale piano Claude è necessario. Se si deve scegliere tra la fatturazione a consumo per token e un piano mensile, il confronto tra API e sottoscrizione permette di individuare il punto di pareggio.
Gli errori di installazione che si verificano realmente
bash: claude: command not found subito dopo un'installazione completata correttamente. Il binario si trova in ~/.local/bin/claude, ma questa directory non è inclusa nel percorso di ricerca della shell. Verificalo con echo $PATH | tr ':' '\n' | grep -Fx "$HOME/.local/bin", che non stampa nulla quando la voce è assente. Correggi il problema per bash con echo 'export PATH="$HOME/.local/bin:$PATH"' >> ~/.bashrc, quindi esegui source ~/.bashrc. L'installazione autonoma dell'estensione VS Code non crea mai quel file, perché l'estensione conserva la propria copia della CLI nella directory dell'estensione.
Error loading shared library libstdc++.so.6. Il programma di installazione ha selezionato la build musl per un sistema glibc. Questo accade quando sono presenti pacchetti per la cross-compilazione con musl e il rilevamento li interpreta erroneamente. Esegui ldd --version 2>&1 | head -1: un output denominato GNU libc o GLIBC indica che il sistema usa glibc e che è stato installato il binario errato; rimuovi quindi l'installazione ed esegui di nuovo il programma di installazione. Su Alpine e sugli altri sistemi musl la correzione è opposta: apk add libgcc libstdc++ ripgrep.
Due copie di claude sullo stesso host. which -a claude elenca tutte le corrispondenze presenti nel PATH. Un'installazione nativa è un collegamento simbolico da ~/.local/bin/claude a ~/.local/share/claude/versions/, una vecchia installazione locale tramite npm si trova in ~/.claude/local/ e npm -g ls @anthropic-ai/claude-code mostra un'installazione globale tramite npm. Rimuovi le copie che non vuoi mantenere, perché è una copia obsoleta, precedente nel PATH, a far sembrare irrisolto un bug già corretto.
Dove verificare lo stato attuale
- Stato del desktop Linux, requisiti e comandi di installazione: code.claude.com/docs/en/desktop-linux
- Distribuzioni supportate e tutti i metodi di installazione della CLI: code.claude.com/docs/en/setup
- Piattaforme per le quali è disponibile un'app da scaricare: claude.com/download
- Contenuto e costo dei vari piani: claude.com/pricing
Ogni numero di versione e ogni data riportati in questa guida rappresentano uno snapshot di agosto 2026. La struttura generale resta invariata: quattro modalità di utilizzo, un unico login per quelle a pagamento e una decisione da prendere: stabilire se la CLI deve appartenere al proprio utente o all'intera macchina.
FAQ
Esiste un'app desktop Claude per Linux?
Sì. Ad agosto 2026 è in versione beta e supporta Ubuntu 22.04 o versioni successive e Debian 12 o versioni successive su amd64 o arm64. Installala con sudo apt install claude-desktop dopo aver aggiunto il repository apt di Anthropic e la relativa signing key, così le nuove versioni vengono installate con i normali aggiornamenti del sistema. La build Linux ha le stesse schede dell'app macOS, inclusa la scheda Claude Code. Computer Use e la dettatura vocale non sono ancora disponibili nella build Linux. Fedora e RHEL non dispongono di un pacchetto. Su queste distribuzioni usa quindi la CLI o claude.ai in un browser.
Serve Node.js per eseguire Claude Code su Linux?
Non per l'installazione consigliata. curl -fsSL https://claude.ai/install.sh | bash scarica un binario compilato che non usa Node.js durante l'esecuzione. Node.js è necessario solo se installi il pacchetto npm, che dalla versione 2.1.198 richiede Node.js 22 o versioni successive. Con una versione precedente di Node.js, npm mostra un avviso EBADENGINE, ma l'installazione termina comunque perché lo stesso binario nativo viene installato come dipendenza specifica per la piattaforma. Non installarlo mai con sudo npm install -g: questa procedura crea file di proprietà di root nel tuo prefisso npm e impedisce i successivi aggiornamenti.
Come posso accedere a Claude Code tramite SSH?
Esegui claude. Il comando mostra un URL di autorizzazione. Apri l'URL nel browser del tuo computer, non sul server. Dopo l'accesso, il browser mostra un codice di accesso invece di eseguire il redirect, perché non può raggiungere il listener di callback avviato da Claude Code sull'indirizzo di loopback della macchina remota. Incolla il codice al prompt Paste code here if prompted. Per le sessioni avviate senza un utente presente, esegui claude setup-token e imposta il token visualizzato come CLAUDE_CODE_OAUTH_TOKEN nei punti in cui è necessario.
Dove salva Claude Code i dati di accesso su Linux?
In ~/.claude/.credentials.json con la modalità file 0600, oppure in CLAUDE_CONFIG_DIR quando imposti quella variabile. Su Linux non viene utilizzato alcun portachiavi, a differenza di macOS. Di conseguenza, qualsiasi processo eseguito con il tuo account può leggere il file. Un backup /home o un'immagine della macchina include quindi un accesso ancora valido: esegui /logout prima di creare uno snapshot o copiare un sistema. Se ANTHROPIC_API_KEY è impostata anche nell'ambiente, ha la precedenza sull'accesso all'abbonamento memorizzato dopo l'approvazione e /status mostra quale accesso è attivo.
Il mio abbonamento Claude Pro copre anche la CLI oltre all'app web?
Sì. Un piano Pro, Max, Team o Enterprise consente di accedere a claude.ai, all'app desktop, alla CLI e all'estensione VS Code con un unico account. Il piano gratuito di claude.ai non include Claude Code. Per usare la CLI nel terminale serve quindi un piano a pagamento o un account Claude Console. L'API viene fatturata separatamente per token tramite un account Console, che è un prodotto diverso da un abbonamento.