Vai al contenuto principale

Documentation Index

Fetch the complete documentation index at: https://code.claude.com/docs/llms.txt

Use this file to discover all available pages before exploring further.

Claude Code funziona in qualsiasi terminale senza configurazione. Questa pagina è per quando qualcosa di specifico non si comporta come previsto. Trova il tuo sintomo di seguito. Se tutto ti sembra già corretto, non hai bisogno di questa pagina. Questa pagina riguarda come far inviare al tuo terminale i segnali giusti a Claude Code. Per modificare i tasti a cui Claude Code stesso risponde, consulta invece scorciatoie da tastiera.

Inserire prompt multilinea

Premere Invio invia il tuo messaggio. Per aggiungere un’interruzione di riga senza inviare, premi Ctrl+J, oppure digita \ e poi premi Invio. Entrambi funzionano in ogni terminale senza configurazione. Nella maggior parte dei terminali puoi anche premere Shift+Invio, ma il supporto varia a seconda dell’emulatore di terminale:
TerminaleShift+Invio per nuova riga
Ghostty, Kitty, iTerm2, WezTerm, Warp, Apple Terminal, Windows TerminalFunziona senza configurazione
VS Code, Cursor, Windsurf, Alacritty, ZedEsegui /terminal-setup una volta
gnome-terminal, JetBrains IDEs come PyCharm e Android StudioNon disponibile; usa Ctrl+J o \ poi Invio
Per VS Code, Cursor, Windsurf, Alacritty e Zed, /terminal-setup scrive Shift+Invio e altre scorciatoie da tastiera nel file di configurazione del terminale. In VS Code, Cursor e Windsurf imposta anche terminal.integrated.mouseWheelScrollSensitivity nelle impostazioni dell’editor per uno scorrimento più fluido in modalità a schermo intero. I binding e le impostazioni esistenti rimangono in posizione; se vedi un messaggio come VSCode terminal Shift+Enter key binding already configured, non è stata apportata alcuna modifica. Esegui /terminal-setup direttamente nel terminale host piuttosto che dentro tmux o screen, poiché ha bisogno di scrivere nella configurazione del terminale host. Se stai eseguendo dentro tmux, Shift+Invio richiede anche la configurazione tmux di seguito anche quando il terminale esterno la supporta. Per associare la nuova riga a un tasto diverso, o per scambiare il comportamento in modo che Invio inserisca una nuova riga e Shift+Invio invii, mappa le azioni chat:newline e chat:submit nel tuo file delle scorciatoie da tastiera.

Abilita le scorciatoie da tastiera Option su macOS

Alcuni scorciatoie di Claude Code utilizzano il tasto Option, come Option+Invio per una nuova riga o Option+P per cambiare modelli. Su macOS, la maggior parte dei terminali non invia Option come modificatore per impostazione predefinita, quindi questi scorciatoie non funzionano finché non lo abiliti. L’impostazione del terminale per questo è solitamente etichettata “Use Option as Meta Key”; Meta è il nome storico Unix per il tasto ora etichettato come Option o Alt.
Apri Impostazioni → Profili → Tastiera e seleziona “Use Option as Meta Key”.Se hai accettato il prompt di primo avvio di Claude Code che offriva “Option+Invio per nuove righe e campanello visivo”, questo è già fatto. Quel prompt esegue /terminal-setup per te, che abilita Option come Meta e cambia il campanello audio a un flash di schermo visivo nel tuo profilo Apple Terminal.
Per Ghostty, Kitty e altri terminali, cerca un’impostazione Option-as-Alt o Option-as-Meta nel file di configurazione del terminale.

Ottieni un campanello del terminale o una notifica

Quando Claude finisce un’attività o si mette in pausa per un prompt di autorizzazione, attiva un evento di notifica. Visualizzare questo come un campanello del terminale o una notifica desktop ti consente di passare ad altro lavoro mentre un’attività lunga è in esecuzione. Per impostazione predefinita Claude Code invia una notifica desktop solo in Ghostty, Kitty e iTerm2. In altri terminali, imposta preferredNotifChannel su "terminal_bell" per far suonare il campanello del terminale, oppure configura un hook Notification per un suono personalizzato o un comando. La notifica desktop raggiunge la tua macchina locale tramite SSH, quindi una sessione remota può comunque avvertirti. Ghostty e Kitty la inoltrano al tuo centro notifiche del sistema operativo senza ulteriore configurazione. iTerm2 richiede che tu abiliti l’inoltro:
1

Apri le impostazioni di notifica di iTerm2

Vai a Impostazioni → Profili → Terminale.
2

Abilita gli avvisi

Seleziona “Notification Center Alerts”, poi fai clic su “Filter Alerts” e abilita “Send escape sequence-generated alerts”.
Se le notifiche ancora non appaiono, conferma che la tua applicazione di terminale ha il permesso di notifica nelle impostazioni del tuo sistema operativo, e se stai eseguendo dentro tmux, abilita il passthrough.

Play a sound with a Notification hook

In qualsiasi terminale puoi configurare un hook Notification per riprodurre un suono o eseguire un comando personalizzato quando Claude ha bisogno della tua attenzione. Gli hook vengono eseguiti insieme alla notifica desktop piuttosto che sostituirla, quindi i terminali che non ricevono una notifica desktop, come Warp o il terminale integrato di VS Code, possono utilizzare un hook o impostare preferredNotifChannel su "terminal_bell" invece. L’esempio di seguito riproduce un suono di sistema su macOS. La guida collegata ha comandi di notifica desktop per macOS, Linux e Windows.
~/.claude/settings.json
{
  "hooks": {
    "Notification": [
      {
        "hooks": [{ "type": "command", "command": "afplay /System/Library/Sounds/Glass.aiff" }]
      }
    ]
  }
}

Configure tmux

Quando Claude Code viene eseguito dentro tmux, due cose si rompono per impostazione predefinita: Shift+Invio invia invece di inserire una nuova riga, e le notifiche desktop e la barra di avanzamento non raggiungono mai il terminale esterno. Aggiungi queste righe a ~/.tmux.conf, poi esegui tmux source-file ~/.tmux.conf per applicarle al server in esecuzione:
~/.tmux.conf
set -g allow-passthrough on
set -s extended-keys on
set -as terminal-features 'xterm*:extkeys'
La riga allow-passthrough consente alle notifiche e agli aggiornamenti di avanzamento di raggiungere il terminale esterno invece di essere inghiottiti da tmux. Le righe extended-keys consentono a tmux di distinguere Shift+Invio da Invio semplice in modo che la scorciatoia della nuova riga funzioni.

Abbina il tema dei colori

Usa il comando /theme, o il selettore di tema in /config, per scegliere un tema di Claude Code che corrisponda al tuo terminale. Selezionando l’opzione auto rileva lo sfondo chiaro o scuro del tuo terminale, quindi il tema segue i cambiamenti di aspetto del sistema operativo ogni volta che il tuo terminale lo fa. Claude Code non controlla lo schema di colori del terminale stesso, che è impostato dall’applicazione del terminale. Per personalizzare ciò che appare in fondo all’interfaccia, configura una linea di stato personalizzata che mostra il modello corrente, la directory di lavoro, il ramo git o altro contesto.

Crea un tema personalizzato

I temi personalizzati richiedono Claude Code v2.1.118 o versioni successive.
Oltre ai preset incorporati, /theme elenca tutti i temi personalizzati che hai definito e tutti i temi forniti dai plugin installati. Seleziona Nuovo tema personalizzato… alla fine dell’elenco per crearne uno in modo interattivo: dai un nome al tema, quindi scegli i singoli token di colore da sovrascrivere. Premi Ctrl+E mentre un tema personalizzato è evidenziato per modificarlo. Ogni tema personalizzato è un file JSON in ~/.claude/themes/. Il nome del file senza l’estensione .json è lo slug del tema, e selezionare il tema memorizza custom:<slug> come preferenza del tema. Il file ha tre campi facoltativi:
CampoTipoDescrizione
namestringEtichetta di visualizzazione mostrata in /theme. Predefinito al nome del file slug
basestringPreset incorporato da cui inizia il tema: dark, light, dark-daltonized, light-daltonized, dark-ansi, o light-ansi. Predefinito a dark
overridesobjectMappa dei nomi dei token di colore ai valori di colore. I token non elencati qui passano al preset di base
I valori di colore accettano #rrggbb, #rgb, rgb(r,g,b), ansi256(n), o ansi:<name> dove <name> è uno dei 16 nomi di colore ANSI standard come red o cyanBright. I token sconosciuti e i valori di colore non validi vengono ignorati, quindi un errore di battitura non può interrompere il rendering. L’esempio seguente definisce un tema che mantiene il preset scuro ma ricolora l’accento del prompt, il testo di errore e il testo di successo:
~/.claude/themes/dracula.json
{
  "name": "Dracula",
  "base": "dark",
  "overrides": {
    "claude": "#bd93f9",
    "error": "#ff5555",
    "success": "#50fa7b"
  }
}
Claude Code monitora ~/.claude/themes/ e ricarica quando un file cambia, quindi le modifiche apportate nel tuo editor si applicano a una sessione in esecuzione senza un riavvio. Il riferimento di seguito copre i token che puoi impostare in overrides. L’editor interattivo in /theme mostra gli stessi token con un’anteprima dal vivo, più alcuni accenti monouso come i colori della schermata di onboarding che vengono omessi qui.
L’esempio seguente combina token da diversi gruppi sottostanti: l’accento del marchio, il bordo della modalità piano, gli sfondi diff e lo sfondo del messaggio a schermo intero.
~/.claude/themes/midnight.json
{
  "name": "Midnight",
  "base": "dark",
  "overrides": {
    "claude": "#a78bfa",
    "planMode": "#38bdf8",
    "diffAdded": "#14532d",
    "diffRemoved": "#7f1d1d",
    "userMessageBackground": "#1e1b4b"
  }
}

Colori di testo e accento

Controlla l’accento del marchio principale e le sfumature di testo in primo piano utilizzate in tutta l’interfaccia.
TokenControlla
claudeAccento del marchio principale, utilizzato per lo spinner e l’etichetta dell’assistente
textTesto in primo piano predefinito
inverseTextTesto disegnato sopra uno sfondo colorato, come i badge di stato
inactiveTesto secondario come suggerimenti, timestamp e elementi disabilitati
subtleBordi sfumati e testo secondario de-enfatizzato
suggestionSuggerimenti di completamento automatico e evidenziazione della selezione nei selettori
permissionBordi della finestra di dialogo, inclusi i prompt di autorizzazione e i selettori
rememberIndicatori di memoria e CLAUDE.md

Colori di stato

Segnala stati di successo, fallimento e avviso nei messaggi e negli indicatori.
TokenControlla
successMessaggi di successo e controlli superati
errorMessaggi di errore e fallimenti
warningAvvisi, messaggi di cautela e il bordo della modalità auto
mergedStato della richiesta pull unita

Casella di input e indicatori di modalità

Imposta il colore del bordo della casella di input e l’accento mostrato mentre una modalità di autorizzazione o un indicatore è attivo.
TokenControlla
promptBorderBordo della casella di input nella modalità di autorizzazione predefinita
planModeAccento e bordo della modalità piano
autoAcceptAccento e bordo della modalità accetta-modifiche
bashBorderBordo della casella di input quando si immette un comando shell !
ideIndicatore di connessione IDE
fastModeIndicatore della modalità veloce

Rendering diff

Colora il codice aggiunto e rimosso nelle modifiche e revisioni dei file.
TokenControlla
diffAddedSfondo delle righe aggiunte
diffRemovedSfondo delle righe rimosse
diffAddedDimmedSfondo del contesto invariato vicino alle righe aggiunte
diffRemovedDimmedSfondo del contesto invariato vicino alle righe rimosse
diffAddedWordEvidenziazione a livello di parola all’interno di una riga aggiunta
diffRemovedWordEvidenziazione a livello di parola all’interno di una riga rimossa

Modalità a schermo intero

Applicare solo in modalità di rendering a schermo intero, dove i messaggi hanno un riempimento di sfondo.
TokenControlla
userMessageBackgroundSfondo dietro i tuoi messaggi nella trascrizione
userMessageBackgroundHoverSfondo dietro un messaggio mentre è al passaggio del mouse o espanso
messageActionsBackgroundSfondo dietro il messaggio selezionato quando la barra delle azioni è aperta
bashMessageBackgroundColorSfondo dietro le voci di comando shell ! nella trascrizione
memoryBackgroundColorSfondo dietro le voci di memoria # nella trascrizione
selectionBgSfondo del testo selezionato con il mouse

Misuratore di utilizzo e etichette degli altoparlanti

Regola la barra mostrata nella vista /usage e le etichette che distinguono i tuoi messaggi da quelli di Claude.
TokenControlla
rate_limit_fillPorzione riempita del misuratore di utilizzo
rate_limit_emptyPorzione non riempita del misuratore di utilizzo
briefLabelYouColore dell’etichetta You sui tuoi messaggi
briefLabelClaudeColore dell’etichetta Claude sui messaggi dell’assistente

Varianti shimmer e colori dei subagent

Diversi token hanno una variante shimmer accoppiata che fornisce il colore più chiaro utilizzato nel gradiente animato dello spinner. Sovrascrivi lo shimmer insieme al suo token di base se l’animazione appare non corrispondente.
  • claude e claudeShimmer
  • warning e warningShimmer
  • permission e permissionShimmer
  • promptBorder e promptBorderShimmer
  • inactive e inactiveShimmer
  • fastMode e fastModeShimmer
Ogni subagent e attività parallela viene mostrata in uno degli otto colori denominati in modo che tu possa distinguerli nella trascrizione. I nomi dei token seguono il modello <color>_FOR_SUBAGENTS_ONLY, dove <color> è red, blue, green, yellow, purple, orange, pink, o cyan. Sovrascrivi questi per cambiare l’aspetto di ogni colore denominato. Ad esempio, un subagent con color: blue nella sua definizione viene disegnato utilizzando il valore blue_FOR_SUBAGENTS_ONLY.Le parole chiave ultrathink e ultraplan nell’input del prompt vengono renderizzate con un gradiente arcobaleno a sette colori. I nomi dei token seguono il modello rainbow_<color> e rainbow_<color>_shimmer, dove <color> è red, orange, yellow, green, blue, indigo, o violet.

Switch to fullscreen rendering

Se lo schermo sfarfalla o la posizione di scorrimento salta mentre Claude sta lavorando, passa alla modalità di rendering a schermo intero. Disegna su uno schermo separato che il terminale riserva per le app a schermo intero invece di aggiungere al tuo normale scrollback, il che mantiene l’utilizzo della memoria piatto e aggiunge il supporto del mouse per lo scorrimento e la selezione. In questa modalità scorri con il mouse o PageUp dentro Claude Code piuttosto che con lo scrollback nativo del tuo terminale; consulta la pagina fullscreen per come cercare e copiare. Esegui /tui fullscreen per passare nella sessione corrente con la tua conversazione intatta. Per renderlo predefinito, imposta la variabile di ambiente CLAUDE_CODE_NO_FLICKER prima di avviare Claude Code:
CLAUDE_CODE_NO_FLICKER=1 claude

Paste large content

Quando incolla più di 10.000 caratteri nel prompt, Claude Code comprime l’input a un placeholder [Pasted text] in modo che la casella di input rimanga utilizzabile. Il contenuto completo viene comunque inviato a Claude quando invii. Il terminale integrato di VS Code può perdere caratteri da incollamenti molto grandi prima che raggiungano Claude Code, quindi preferisci flussi di lavoro basati su file lì. Per input molto grandi come interi file o lunghi log, scrivi il contenuto in un file e chiedi a Claude di leggerlo invece di incollare. Questo mantiene la trascrizione della conversazione leggibile e consente a Claude di fare riferimento al file per percorso nei turni successivi.

Modifica i prompt con le scorciatoie da tastiera Vim

Claude Code include una modalità di editing in stile Vim per l’input del prompt. Abilitala tramite /config → Editor mode, o impostando editorMode su "vim" in ~/.claude/settings.json. Imposta Editor mode di nuovo su normal per disattivarla. La modalità Vim supporta un sottoinsieme di motions in modalità NORMAL e VISUAL e operatori, come la navigazione hjkl, la selezione v/V, e d/c/y con oggetti di testo. Consulta la tabella di riferimento della modalità editor Vim per la tabella completa dei tasti. I motions Vim non sono rimappabili tramite il file delle scorciatoie da tastiera. Premere Invio invia comunque il tuo prompt in modalità INSERT, a differenza di Vim standard. Usa o o O in modalità NORMAL, o Ctrl+J, per inserire una nuova riga invece.
  • Interactive mode: riferimento completo delle scorciatoie da tastiera e la tabella dei tasti Vim
  • Keybindings: rimappa qualsiasi scorciatoia di Claude Code, inclusi Invio e Shift+Invio
  • Fullscreen rendering: dettagli su scorrimento, ricerca e copia in modalità fullscreen
  • Hooks guide: altri esempi di hook Notification per Linux e Windows
  • Troubleshooting: correzioni per problemi al di fuori della configurazione del terminale