SpyBara
Go Premium

model-config.md 2026-09-11 23:01 UTC to 2026-09-12 03:02 UTC

This page contains 20 additions and 8 deletions.

2026
Wed 9 22:58 Sat 12 03:02 Mon 14 22:58 Fri 18 23:58 Mon 21 22:59 Tue 22 23:59

Configurazione del modello

Configurare quale modello Claude Code utilizza, livelli di impegno, contesto esteso e la finestra di auto-compattazione

Modelli disponibili

Per l'impostazione model in Claude Code, è possibile configurare:

  • Un alias del modello
  • Un nome del modello
    • API Anthropic: un nome del modello completo
    • Amazon Bedrock: un ARN del profilo di inferenza
    • Microsoft Foundry: un nome di distribuzione
    • Agent Platform di Google Cloud: un nome di versione

Per indicazioni su quale modello e livello di impegno si adattano a diversi tipi di lavoro, consultare Choosing a Claude model and effort level in Claude Code sul blog.

Alias dei modelli

Utilizzare un alias del modello per selezionare le impostazioni del modello senza ricordare i numeri di versione esatti:

Alias del modello Comportamento
default Valore speciale che cancella qualsiasi override del modello e ripristina il valore predefinito di runtime per il vostro account. Non è di per sé un alias del modello
best Utilizza il modello a cui si risolve l'alias fable dove Fable è disponibile per voi, altrimenti lo stesso modello di opus
fable Utilizza il modello Fable per il vostro provider per i vostri compiti più difficili e lunghi
sonnet Utilizza il modello Sonnet più recente per i compiti di codifica quotidiani
opus Utilizza il modello Opus più recente per i compiti di ragionamento complesso
haiku Utilizza il modello Haiku veloce ed efficiente per i compiti semplici
sonnet[1m] Utilizza Sonnet con una finestra di contesto di 1 milione di token per sessioni lunghe. Nessun effetto quando sonnet si risolve già in Sonnet 5 con la sua finestra nativa di 1M; dietro un gateway LLM, seleziona la finestra 1M per Sonnet 5
opus[1m] Utilizza Opus con una finestra di contesto di 1 milione di token per sessioni lunghe
opusplan Modalità speciale che utilizza opus durante la modalità piano, quindi passa a sonnet per l'esecuzione

La versione a cui si risolvono gli alias opus e sonnet dipende dal provider:

Provider opus sonnet
API Anthropic Opus 5 Sonnet 5
Claude Platform on AWS Opus 5 Sonnet 4.6
Amazon Bedrock, Agent Platform di Google Cloud Opus 5 Sonnet 4.5
Microsoft Foundry Opus 4.6 Sonnet 4.5

A meno che non impostiate ANTHROPIC_DEFAULT_FABLE_MODEL, l'alias fable si risolve in Fable 5.1, tranne nelle sessioni Claude apps gateway dove fable e best si risolvono in Fable 5. Prima della v2.1.257, fable si risolveva in Fable 5 su ogni provider.

Un gateway non configurato per servire claude-fable-5-1 rifiuta le richieste per quel modello. Per utilizzare Fable 5.1 attraverso un gateway che lo serve, selezionarlo con /model claude-fable-5-1.

Dove un alias si risolve in un modello più vecchio, i modelli più recenti sono disponibili selezionando il nome completo del modello esplicitamente o impostando ANTHROPIC_DEFAULT_OPUS_MODEL o ANTHROPIC_DEFAULT_SONNET_MODEL.

Prima della v2.1.219, opus si risolveva in Opus 4.8 sull'API Anthropic dalla v2.1.154, e su Claude Platform on AWS, Amazon Bedrock e Agent Platform di Google Cloud dalla v2.1.207. Prima della v2.1.207, opus si risolveva in Opus 4.7 su Claude Platform on AWS e in Opus 4.6 su Amazon Bedrock e Agent Platform di Google Cloud.

Gli alias puntano alla versione consigliata per il vostro provider e si aggiornano nel tempo. Per fissare una versione specifica, utilizzare il nome completo del modello, ad esempio claude-opus-5, o impostare la variabile di ambiente corrispondente come ANTHROPIC_DEFAULT_OPUS_MODEL.

Lavorare con Fable

Claude Fable 5.1 e Claude Fable 5 sono i modelli più capaci in Claude Code, adatti a compiti più grandi di una singola sessione. Sostengono lunghe sessioni autonome, investigano prima di agire e verificano il loro lavoro più spesso rispetto ai modelli più piccoli. Fable 5.1 è la versione più recente.

Nessuno dei due modelli Fable è il valore predefinito del tipo di account su alcun piano o provider. Selezionarne uno esplicitamente:

  • Fable 5.1: eseguire /model fable, o avviare con claude --model fable. Nelle sessioni Claude apps gateway, dove l'alias si risolve in Fable 5, eseguire /model claude-fable-5-1 invece.
  • Fable 5: selezionarlo per ID del modello. Sull'API Anthropic, eseguire /model claude-fable-5 o avviare con claude --model claude-fable-5. Su altri provider, utilizzare l'ID del modello Fable 5 del vostro provider o fissarlo con ANTHROPIC_DEFAULT_FABLE_MODEL.

Se vi connettete direttamente all'API Anthropic e le vostre impostazioni utente contengono claude-fable-5 o claude-fable-5[1m] come modello, ad esempio perché avete selezionato Fable nel selettore /model prima della v2.1.257, Claude Code cambia quel valore salvato nell'alias fable o fable[1m] la prima volta che eseguite v2.1.257 o successiva. La riga del modello di avvio mostra (auto-updated) una volta. Un valore claude-fable-5 nelle impostazioni di progetto, locali o gestite rimane come è.

Le richieste che i classificatori di sicurezza di un modello Fable contrassegnano, più spesso nei domini della sicurezza informatica e della biologia, attivano il fallback automatico del modello.

Per ottenere il massimo da Fable:

  • Descrivete il risultato, non i passaggi: dategli il risultato che desiderate e lasciate che pianifichi il percorso. Per mantenerlo orientato verso quel risultato, impostate un obiettivo.
  • Dategli problemi ambigui: le investigazioni delle cause radice, il debug dei disservizi e le decisioni architettoniche sono dove l'investigazione e la verifica extra ripagano.
  • Saltate i promemoria di verifica: verifica il suo lavoro con meno sollecitazioni, quindi i promemoria per testare o controllare sono solitamente non necessari.
  • Dimensionate i compiti più grandi: dategli lavoro che normalmente dividereste in pezzi. Sostiene lunghe sessioni senza perdere il filo.

Sull'API Anthropic, il selettore /model elenca un modello Fable solo dopo che il server lo segnala come disponibile per la vostra organizzazione. Quando digitate /model fable o un ID del modello Fable, Claude Code controlla la disponibilità direttamente con il server, quindi una selezione digitata può avere successo anche quando il selettore non elenca la voce.

Fable e crediti di utilizzo

A seconda del vostro piano e del livello di posto, l'utilizzo di Fable può fatturare ai crediti di utilizzo invece di attingere ai limiti inclusi nel vostro piano. Quando lo fa, il selettore /model mostra "Requires usage credits" sulla riga Fable. Per gestire i crediti di utilizzo, consultare Add usage credits to your subscription.

Nelle sessioni interattive, Claude Code mostra un prompt di consenso prima che una richiesta Fable fatturi i crediti di utilizzo. I membri dei piani Enterprise con fatturazione organizzativa non vedono il prompt. Potete continuare su Fable utilizzando i crediti di utilizzo o passare al vostro modello predefinito. Potete anche chiudere il prompt:

  • Nel selettore /model, mantenete il vostro modello attuale.
  • A metà sessione, Claude Code continua il turno sul vostro modello predefinito.

Dopo aver scelto di continuare su Fable utilizzando i crediti di utilizzo, Claude Code non mostra più il prompt.

In una sessione con Remote Control connesso, una sessione in background, o una sessione di un compagno di squadra agent team, nessuno potrebbe essere al terminale, quindi Claude Code tiene il prompt di consenso a metà sessione per la scadenza dialogExpiry, cinque minuti per impostazione predefinita. Se nessuno ha risposto entro la scadenza, Claude Code termina il turno senza inviare la richiesta e aggiunge un avviso alla trascrizione, che il client Remote Control mostra anche. La vostra selezione del modello rimane invariata e Claude Code chiede di nuovo il consenso al vostro prossimo messaggio.

Quello che potete fare mentre il prompt è in attesa dipende dalla sessione:

  • Con Remote Control connesso o nella sessione di un compagno di squadra, premete un tasto qualsiasi al terminale per annullare la scadenza, e Claude Code attende la vostra risposta.
  • In una sessione in background, rispondete prima della scadenza.
  • Se inviate un nuovo messaggio dal client remoto prima che qualcuno abbia digitato al terminale, Claude Code termina il turno allo stesso modo e il vostro nuovo messaggio inizia il turno successivo. Dopo che qualcuno digita al terminale, Claude Code continua ad aspettare la risposta e mette in coda il vostro nuovo messaggio dietro di essa.

In modalità non interattiva con il flag -p e attraverso l'Agent SDK, Claude Code non mostra mai il prompt di consenso. Quando una richiesta Fable lì fatturasse ai crediti di utilizzo, Claude Code la fattura senza chiedere.

Impostazione del vostro modello

Potete configurare il vostro modello in diversi modi, elencati in ordine di priorità:

  1. Durante la sessione: utilizzare /model <alias|name> per passare immediatamente, o eseguire /model senza argomenti per aprire il selettore. Consultare quando Claude Code vi chiede di confermare il passaggio
  2. All'avvio: avviare con claude --model <alias|name>
  3. Variabile di ambiente: impostare ANTHROPIC_MODEL=<alias|name>
  4. Impostazioni: configurare permanentemente nel vostro file di impostazioni utilizzando il campo model
  5. Valore predefinito per le nuove sessioni: impostare ANTHROPIC_DEFAULT_MODEL=<alias|name>

/model salva la vostra scelta come valore predefinito per le nuove sessioni scrivendo il campo model nelle vostre impostazioni utente. Nel selettore:

  • Enter: passa il modello e salva come vostro valore predefinito
  • s: passa il modello solo per questa sessione

Digitare /model <name> direttamente si comporta come Enter. Se impostate un modello con /model in modalità non interattiva, con il flag -p, la vostra scelta si applica solo alla sessione attuale e non viene salvata come vostro valore predefinito; /model in quella modalità richiede Claude Code v2.1.205 o successiva. Le impostazioni di progetto e gestite mantengono comunque la precedenza e si riapplicano al prossimo avvio. Un modello predefinito dell'organizzazione che il vostro amministratore ha configurato per ignorare la selezione dell'utente si riapplica anche al prossimo avvio.

Nella v2.1.144 attraverso v2.1.152, /model si applicava solo alla sessione attuale e d nel selettore salvava un valore predefinito.

Il flag --model e la variabile di ambiente ANTHROPIC_MODEL si applicano solo alla sessione che avviate con essi. Per eseguire modelli diversi in terminali diversi contemporaneamente, avviate ciascuno con il suo flag --model piuttosto che passare con /model.

I prezzi nel selettore /model appaiono quando Claude Code parla con l'API Anthropic, direttamente o attraverso un gateway LLM che lo fa da proxy, e il prezzo su una riga è il prezzo del modello che quella riga seleziona. Su provider di terze parti come Amazon Bedrock e sul gateway Claude apps, il vostro provider o gateway determina quello che pagate, quindi le righe del selettore non mostrano alcun prezzo. Il prezzo è solo un'etichetta di visualizzazione; non influisce su quale modello una riga seleziona o cosa il vostro provider fattura. Prima della v2.1.206, Claude Platform on AWS e le sessioni gateway mostravano i prezzi di listino di Anthropic e una riga poteva mostrare il prezzo di un modello diverso da quello che selezionava.

Le sessioni riprese avviate con claude --resume, --continue, o il selettore /resume mantengono il modello che stavano utilizzando quando la trascrizione è stata salvata, indipendentemente dall'impostazione model attuale. Se il modello ripristinato è stato ritirato o è escluso da availableModels, la sessione ricade nell'ordine di precedenza normale. Questo impedisce che la scelta /model di un'altra sessione cambi il modello al ripristino. Su provider che utilizzano ID di distribuzione specifici del provider piuttosto che ID del modello Anthropic, come Amazon Bedrock, Agent Platform di Google Cloud e Microsoft Foundry, il modello della trascrizione non viene ripristinato affatto e la sessione risolve il suo modello attraverso l'ordine di precedenza normale.

Un modello che scegliete per il nuovo avvio con --model o ANTHROPIC_MODEL mantiene comunque la precedenza sul modello ripristinato. A partire dalla v2.1.195, lo fa anche una variabile della famiglia ANTHROPIC_DEFAULT_OPUS_MODEL. ANTHROPIC_DEFAULT_MODEL può farlo anche, secondo le condizioni elencate nella sua sezione.

Quando il modello attivo all'avvio proviene dalle impostazioni di progetto o gestite piuttosto che dalla vostra selezione, l'intestazione di avvio mostra quale file di impostazioni lo ha impostato. Eseguire /model per ignorare; l'impostazione di progetto o gestita si riapplica al prossimo avvio. Su piattaforme che incorporano Claude Code e impostano CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST, la configurazione del modello dell'host ha la precedenza sulle impostazioni del modello gestite, mentre un allowlist availableModels gestito rimane in vigore a meno che l'host non fornisca il suo; Exceptions to managed settings precedence dice quali chiavi e variabili l'host ignora.

Se voi o la vostra organizzazione configurate PreModelSwitch hooks, vengono eseguiti prima che un passaggio richiesto si applichi e possono bloccarlo o chiedervi di confermare.

Quando Claude Code non riesce a dire quali hook PreModelSwitch i plugin gestiti della vostra organizzazione forniscono, ad esempio perché un plugin gestito non è riuscito a caricarsi, rifiuta il passaggio piuttosto che applicarlo senza controllo, e controlla di nuovo ad ogni nuovo tentativo. Consultare Model switch was blocked by a PreModelSwitch hook per il messaggio e il recupero.

Quando passate i modelli attraverso il metodo setModel() dell'Agent SDK o da un dispositivo connesso attraverso Remote Control, o un'app come l'Desktop app che esegue il CLI di Claude Code passa per voi, Claude Code controlla che la stringa sia una che riconosce prima di salvarla. Questo controllo richiede Claude Code v2.1.200 o successiva. Controllare una scelta Remote Control richiede Claude Code v2.1.260 o successiva sulla vostra macchina. Sull'API Anthropic, Claude Code riconosce:

Claude Code rifiuta una stringa non riconosciuta con Model "<name>" is not a recognized model id. e la sessione mantiene il suo modello attuale, invece di salvare la stringa e fallire alla prossima richiesta. Consultare il riferimento dell'errore per i passaggi di recupero.

Il controllo viene eseguito solo sull'API Anthropic. Su Amazon Bedrock, Agent Platform di Google Cloud, Microsoft Foundry, Claude Platform on AWS, e dietro un gateway LLM o un ANTHROPIC_BASE_URL personalizzato, il vostro provider o gateway definisce i nomi dei modelli, quindi Claude Code passa qualsiasi stringa senza controllarla. Il controllo non copre nemmeno il flag --model, la variabile di ambiente ANTHROPIC_MODEL, o l'impostazione model; un valore digitato male lì produce There's an issue with the selected model alla prima richiesta invece. Claude Code può comunque scrivere la riga diagnostica del modello non riconosciuto al momento della richiesta, su ogni provider.

Quando il modello richiesto ha una data di ritiro programmata o viene automaticamente rimappato a una versione più recente, Claude Code mostra un avviso che nomina il modello richiesto. Le sessioni interattive lo mostrano come un avviso di avvio. Dalla v2.1.182, lo stesso avviso viene scritto su stderr in modalità non interattiva quando si utilizza il formato di output di testo predefinito. Il controllo copre anche un model impostato nel frontmatter del subagent. L'avviso stderr è soppresso per --output-format json e stream-json; leggere il modello effettivo dal campo modelUsage del messaggio di risultato invece.

Ad esempio, avviare una sessione su Opus:

claude --model opus

Quindi passare i modelli dalla sessione:

/model sonnet

File di impostazioni di esempio:

{
    "permissions": {
        "allow": ["Bash(npm run lint)"]
    },
    "model": "opus"
}

Impostare un modello predefinito per le nuove sessioni

Impostare ANTHROPIC_DEFAULT_MODEL=<alias|name> per scegliere il modello su cui le vostre sessioni si avviano per impostazione predefinita. Richiede Claude Code v2.1.236 o successiva.

Claude Code avvia una nuova sessione sul modello della variabile solo quando nessuno di questi seleziona un modello:

Una scelta che salvate con /model ha la precedenza sulla variabile anche nei lanci successivi. Con ANTHROPIC_MODEL impostato invece, Claude Code ritorna al modello della variabile al prossimo lancio, qualunque cosa abbiate salvato con /model.

Claude Code risolve anche l'opzione Default al modello della variabile, a meno che non si applichi un modello predefinito dell'organizzazione. Quando l'opzione Default si risolve al modello della variabile, la riga Default nel selettore /model mostra l'etichetta Set by ANTHROPIC_DEFAULT_MODEL.

Claude Code ignora la variabile in questi casi e l'opzione Default si risolve come se non l'aveste impostata:

Quando una nuova sessione si avvierebbe sul modello della variabile, una sessione che riprendete con claude --resume, --continue, o il selettore /resume si avvia su di esso anche. Claude Code non ripristina il modello salvato nella trascrizione di quella sessione. Altrimenti Claude Code non utilizza la variabile quando riprendete una sessione.

Una nuova sessione si avvia su un modello diverso da quello che avete scelto

Quando scegliete un modello con /model e la vostra prossima sessione si avvia su qualcos'altro, queste sono le cause solite:

  • L'avete scelto per una sessione. Premere s nel selettore, avviare con --model, e eseguire /model in modalità non interattiva si applicano tutti alla sessione attuale e lasciano il vostro valore predefinito salvato da solo.
  • Qualcosa con priorità più alta imposta il modello. Un valore model nelle impostazioni di progetto o gestite, ANTHROPIC_MODEL nella vostra shell, o un valore predefinito dell'organizzazione che il vostro amministratore ha impostato per ignorare le scelte dell'utente si applica di nuovo ad ogni lancio. La vostra scelta /model è ancora salvata; è superata. Quando le impostazioni di progetto o gestite impostano il modello, l'intestazione di avvio nomina il file.
  • Claude Code non ha potuto salvare la vostra scelta. /model scrive model in ~/.claude/settings.json. Se non potete scrivere in quel file, ad esempio perché un altro strumento lo genera o lo collega a una copia di sola lettura, il modello che avete scelto dura per la sessione e il prossimo lancio legge il valore vecchio. Impostare model nello strumento che genera il file, o rendere il file scrivibile. Consultare A change you made in Claude Code is lost in new sessions.
  • Avete ripreso una sessione. Una sessione che riprendete con claude --resume o --continue solitamente mantiene il modello che stava utilizzando piuttosto che il vostro valore predefinito attuale.

Limitare la selezione del modello

Gli amministratori aziendali possono utilizzare availableModels nelle impostazioni gestite o di policy per limitare quali modelli gli utenti possono selezionare. Le voci corrispondono a una famiglia di modelli come sonnet, un prefisso di versione come claude-sonnet-4-5, o un ID modello completo come claude-sonnet-4-5-20250929. Un prefisso di versione corrisponde anche a ID modello successivi che lo estendono con un altro segmento, quindi claude-fable-5 consente sia Fable 5 che Fable 5.1, mentre claude-fable-5-1 consente solo Fable 5.1.

Sulle piattaforme che incorporano Claude Code e impostano CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST, la configurazione del modello dell'host ha la precedenza rispetto alle impostazioni del modello gestito, mentre un allowlist availableModels gestito rimane in vigore a meno che l'host non fornisca il proprio; Eccezioni alla precedenza delle impostazioni gestite indica quali chiavi e variabili l'host sostituisce.

Quando availableModels è impostato, l'allowlist si applica ovunque un utente possa specificare un modello:

  • Modello della sessione principale: /model, il flag --model, la variabile di ambiente ANTHROPIC_MODEL, l'impostazione model, ANTHROPIC_DEFAULT_MODEL, e il modello ripristinato quando si riprende una sessione
  • Risoluzione alias: le variabili di ambiente ANTHROPIC_DEFAULT_OPUS_MODEL, ANTHROPIC_DEFAULT_SONNET_MODEL, ANTHROPIC_DEFAULT_HAIKU_MODEL, e ANTHROPIC_DEFAULT_FABLE_MODEL non possono reindirizzare un alias consentito a un modello al di fuori dell'elenco
  • Modalità veloce: /fast rifiuta di attivare/disattivare quando comporterebbe un passaggio implicito a un modello Opus al di fuori dell'elenco, con il messaggio "is not in your organization's allowed models"
  • Modelli di subagent e teammate: il campo model nel frontmatter di subagent, il parametro model dello strumento Agent, i modelli teammate del team di agent, CLAUDE_CODE_SUBAGENT_MODEL, e, nella versione 2.1.197 e precedenti, il selezionatore di modelli nella procedura guidata /agents
  • Modelli di skill e comando: il frontmatter model in skills e commands
  • Modello Advisor: l'impostazione advisorModel configurata e il flag --advisor
  • Modello di background agent: il modello selezionato nel dispatch picker

Sull'API Anthropic e su Claude Platform on AWS, un alias di famiglia di modelli, opus, sonnet, haiku, o fable, si risolve nel suo modello usuale quando l'allowlist consente quel modello. Quando l'allowlist blocca quel modello, Claude Code sostituisce la versione più recente della famiglia che l'allowlist consente e mostra un avviso che nomina sia i modelli richiesti che quelli sostituiti. Con ["sonnet", "claude-opus-4-6"], ad esempio, sia /model opus che --model opus selezionano Claude Opus 4.6, l'Opus più recente consentito. Prima della versione 2.1.205, un alias la cui versione più recente rilasciata era al di fuori dell'elenco veniva rifiutato o sostituito come qualsiasi altra selezione bloccata, anche quando l'elenco consentiva una versione precedente.

La sostituzione ha bisogno di una versione consentita su cui atterrare: quando l'allowlist non consente alcuna versione della famiglia dell'alias, l'alias segue il comportamento di rifiuto e sostituzione di seguito come qualsiasi altro valore bloccato.

Claude Code gestisce qualsiasi altra selezione bloccata in base a dove il modello è stato impostato:

  • /model: Claude Code rifiuta il passaggio con un errore

  • Flag --model, ANTHROPIC_MODEL, o l'impostazione model: Claude Code sostituisce il valore all'avvio con un avviso che nomina sia i modelli richiesti che quelli sostituiti, e la sessione inizia sul modello predefinito

  • ANTHROPIC_DEFAULT_MODEL: Claude Code ignora la variabile

  • Override di subagent o teammate: Claude Code esegue il subagent o il teammate su un modello di fallback piuttosto che far fallire la richiesta. Vedere Scegliere un modello per il fallback del subagent e Specificare teammate e modelli per il fallback del teammate.

    Nelle sessioni interattive, Claude Code ti avverte quando sostituisce il modello di un subagent, da questo fallback o dalla sostituzione della versione più recente consentita di cui sopra, nominando i modelli richiesti e sostituiti; non segnala il fallback di un teammate.

    Dove opera la sostituzione della versione più recente consentita di cui sopra, un alias di famiglia bloccato la segue invece. Prima della versione 2.1.222, un alias ricadeva come qualsiasi altro valore bloccato su ogni provider

  • Override di skill o comando: Claude Code ignora l'override, incluso un alias di famiglia bloccato, e lo skill o il comando viene eseguito sul modello della sessione. Uno skill o un comando che viene eseguito in un subagent segue il comportamento del subagent di cui sopra

  • Impostazione advisorModel: l'advisor è disabilitato per la sessione

  • Flag --advisor: Claude Code esce con un errore all'avvio. In una sessione in background, avvia la sessione senza l'advisor invece di uscire

Claude Code nasconde i modelli esclusi dal selezionatore /model. Un ID modello completo nell'elenco che non ha una riga del selezionatore integrata, come una versione precedente che l'elenco fissa, appare nel selezionatore /model come sua propria riga etichettata, a meno che Claude Code non sostituisca le opzioni integrate con una lineup modelPicker. Prima della versione 2.1.199, tale ID era selezionabile solo digitando /model <id>.

I cambiamenti di modello che Claude Code effettua per tuo conto vengono controllati allo stesso modo:

  • Catene di modelli di fallback: le voci al di fuori dell'allowlist vengono eliminate
  • Aggiornamenti in Plan Mode: sull'API Anthropic e su Claude Platform on AWS, un aggiornamento come opusplan a un modello escluso utilizza la versione più recente consentita della famiglia di aggiornamento. Su provider con ID modello specifici del provider, e quando nessuna versione è consentita, l'aggiornamento viene saltato e la pianificazione continua sul modello della sessione
  • Fallback automatico del modello: un fallback il cui target è escluso non viene eseguito, quindi la richiesta contrassegnata termina con un rifiuto
  • Classificatore Auto Mode: il valore predefinito Claude Sonnet 5 del classificatore si applica solo quando l'allowlist consente Sonnet 5. Quando è escluso, il classificatore viene eseguito sul modello della sessione, che l'allowlist già governa, o su un modello Opus quando la sessione viene eseguita su un modello Fable. Su provider diversi dall'API Anthropic, quel fallback Opus viene eseguito sul modello Opus predefinito del provider senza consultare l'allowlist. Richiede Claude Code v2.1.210 o successivo
  • Modalità veloce: l'abilitazione della modalità veloce viene rifiutata quando il modello su cui la sessione verrebbe eseguita in seguito è al di fuori dell'allowlist
{
  "availableModels": ["sonnet", "haiku"]
}

Copertura della superficie

Ogni superficie applica l'allowlist che riceve. Quale meccanismo di consegna raggiunge ogni superficie differisce:

Meccanismo di consegna CLI e IDE Sessioni locali desktop Sessioni web, mobile e cloud Agent SDK e non-interattive Cowork
Impostazioni gestite dal server dalla console di amministrazione Applicate Applicate Applicate Applicate Non consegnate
File MDM o impostazioni gestite Applicate Applicate Non consegnate negli ambienti ospitati da Anthropic; negli ambienti self-hosted, applicate dall'immagine del runner secondo come Claude Code combina le fonti gestite Applicate Applicate dove distribuite
  • Le sessioni cloud, su Claude Code sul web o nell'app Desktop, vengono eseguite su VM gestite da Anthropic per impostazione predefinita: le impostazioni distribuite al tuo dispositivo non le raggiungono, quindi consegna l'allowlist tramite impostazioni gestite dal server. Le sessioni che la tua organizzazione instrada a un ambiente self-hosted vengono eseguite sul tuo calcolo e leggono anche il file di impostazioni gestite nell'immagine del runner. Come Claude Code combina le fonti gestite indica quando quel file si applica. Un cambio di modello a metà sessione in una sessione cloud viene rifiutato quando il modello richiesto è escluso dall'allowlist. Il rifiuto lato server alla creazione della sessione si applica alle restrizioni del modello dell'organizzazione, non alla chiave di impostazioni availableModels.
  • Cowork, la scheda agentic-work nell'app Claude Desktop, esegue le sue sessioni su Claude Code ma, per progettazione, non riceve impostazioni gestite dal server dalla console di amministrazione claude.ai. Un file di impostazioni gestite si applica alle sessioni Cowork quando è presente dove la sessione viene eseguita; le sessioni Cowork remote vengono eseguite su VM gestite da Anthropic, dove un file distribuito dal dispositivo non è presente.
  • Le sessioni su provider di terze parti come Amazon Bedrock, Agent Platform di Google Cloud, Microsoft Foundry, e Claude Platform on AWS non ricevono impostazioni gestite dal server, quindi consegna l'allowlist tramite file MDM o impostazioni gestite lì.
  • La consegna gestita dal server richiede anche che la sessione si autentichi con un login o chiave idonei. Le flotte che generano chiavi solo tramite uno script apiKeyHelper dovrebbero consegnare l'allowlist tramite file MDM o impostazioni gestite.
  • La scheda Desktop Code ospita anche sessioni SSH, che leggono il file di impostazioni gestite dall'host remoto su cui vengono eseguite. Vedere Impostazioni gestite desktop.
  • I selezionatori di modelli su claude.ai e nell'app Desktop nascondono o disattivano i modelli esclusi dall'allowlist della tua organizzazione. Lo stato del selezionatore è una comodità per gli utenti; l'applicazione avviene nella sessione.

Comportamento del modello predefinito

Da solo, availableModels lascia l'opzione Predefinito sul valore predefinito di runtime del sistema per l'account fino a quando non imposti anche enforceAvailableModels. Se quel valore predefinito è un modello che intendi limitare, imposta anche enforceAvailableModels.

Un array availableModels vuoto non attiva mai l'applicazione del modello Predefinito: con availableModels: [], le selezioni di modelli denominati vengono bloccate ma il modello Predefinito per il tipo di account rimane utilizzabile indipendentemente da enforceAvailableModels.

Applicare l'allowlist per il modello Predefinito

Imposta enforceAvailableModels: true insieme a un availableModels non vuoto nelle impostazioni gestite per estendere l'allowlist all'opzione Predefinito. Ciò richiede Claude Code v2.1.175 o successivo.

{
  "availableModels": ["sonnet", "haiku"],
  "enforceAvailableModels": true
}

L'opzione Predefinito si risolve nel valore predefinito del tipo di account, o nel modello predefinito dell'organizzazione quando un amministratore ne ha impostato uno. Quando quel modello non è nell'allowlist, l'opzione Predefinito si risolve invece nella prima voce availableModels che nomina un modello consentito e disponibile, e la riga Predefinito del selezionatore /model mostra quel modello. Questo si applica ovunque il valore predefinito sia raggiunto: avvio della sessione, selezione di Predefinito in /model, la parola chiave "default" nelle catene di modelli di fallback, e il fallback utilizzato quando una selezione esclusa viene eliminata.

enforceAvailableModels rimappa l'opzione Predefinito solo quando availableModels è non vuoto. Con availableModels: [], il modello Predefinito per il tipo di account rimane utilizzabile, quindi l'impostazione non può bloccare gli utenti da ogni modello. Quando availableModels è non vuoto ma nessuna voce si risolve in un modello consentito e disponibile, l'applicazione viene saltata e Predefinito si risolve nel valore predefinito del tipo di account, con un avviso visibile solo sotto --debug. Mantieni almeno una voce garantita disponibile nell'elenco per evitare questo.

Distribuisci entrambe le chiavi insieme nella fonte gestita con il ranking più alto che consegni. Per impostazione predefinita Claude Code legge solo quella fonte, quindi una coppia posizionata in un file di impostazioni gestite viene ignorata quando la console di amministrazione consegna qualsiasi impostazione; secondo il merge opt-in in come Claude Code combina le fonti gestite, Claude Code ignora comunque una mappa modelOverrides da una fonte classificata al di sotto di quella che imposta availableModels.

Controllare il modello su cui gli utenti vengono eseguiti

L'impostazione model è una selezione iniziale, non un'applicazione. Imposta quale modello è attivo quando una sessione inizia, ma gli utenti possono comunque aprire /model e scegliere Predefinito, che si risolve nel valore predefinito di runtime del sistema indipendentemente da cosa sia impostato model, a meno che enforceAvailableModels non lo reindizzi.

Per controllare completamente l'esperienza del modello, combina queste impostazioni:

  • availableModels: limita quali modelli denominati gli utenti possono passare a
  • enforceAvailableModels: estende l'allowlist availableModels all'opzione Predefinito, quindi Predefinito non può risolversi in un modello al di fuori dell'elenco
  • model: imposta la selezione del modello iniziale quando una sessione inizia
  • ANTHROPIC_DEFAULT_SONNET_MODEL / ANTHROPIC_DEFAULT_OPUS_MODEL / ANTHROPIC_DEFAULT_HAIKU_MODEL / ANTHROPIC_DEFAULT_FABLE_MODEL: controllano a cosa si risolvono gli alias sonnet, opus, haiku, e fable, e quale versione utilizza il valore predefinito del tipo di account

Questo esempio avvia gli utenti su Sonnet 4.5, limita il selezionatore a Sonnet e Haiku, e assicura che Predefinito si risolva in un modello nell'allowlist piuttosto che nel valore predefinito del tier:

{
  "model": "claude-sonnet-4-5",
  "availableModels": ["claude-sonnet-4-5", "haiku"],
  "enforceAvailableModels": true,
  "env": {
    "ANTHROPIC_DEFAULT_SONNET_MODEL": "claude-sonnet-4-5"
  }
}

Senza enforceAvailableModels o il blocco env, un utente che seleziona Predefinito nel selezionatore ottiene il valore predefinito di runtime piuttosto che la versione fissata in model. Le due impostazioni coprono ambiti diversi: enforceAvailableModels fa sì che Predefinito obbedisca all'allowlist, mentre il blocco env fissa quale versione un alias consentito come sonnet si risolve. Usa enforceAvailableModels da solo quando limitare le famiglie di modelli è sufficiente; aggiungi il blocco env quando hai anche bisogno di fissare una versione specifica.

Comportamento di merge

Quando le impostazioni gestite che Claude Code applica definiscono availableModels, solo quell'elenco si applica, a parte una piattaforma host che fornisce il proprio: le voci nelle impostazioni utente, progetto o locale non possono estenderlo, e Claude Code non unisce mai availableModels tra fonti gestite nemmeno; come Claude Code combina le fonti gestite indica quale elenco della fonte si applica. Altrimenti, gli elenchi dalle impostazioni utente, progetto e locale vengono concatenati e deduplicati come altre impostazioni di array. Prima di Claude Code v2.1.175, le voci da ambiti di precedenza inferiore si univano nell'elenco gestito invece di essere sostituite da esso.

All'interno dell'elenco effettivo, una voce che nomina un modello specifico in una famiglia, sia un prefisso di versione che un ID modello completo, disabilita la voce wildcard della famiglia: ["sonnet", "claude-sonnet-4-5"] consente solo le versioni di Sonnet 4.5, non ogni modello Sonnet.

ID modello Mantle

Quando l'endpoint Amazon Bedrock Mantle è abilitato, le voci in availableModels che iniziano con anthropic. vengono aggiunte al selezionatore /model come opzioni personalizzate e instradate all'endpoint Mantle. Questa è un'eccezione alla corrispondenza dell'alias descritta in Fissare modelli per distribuzioni di terze parti. L'impostazione limita comunque il selezionatore alle voci elencate, e un ID Mantle incorpora un nome di famiglia, quindi conta come una voce specifica e disabilita il wildcard della famiglia: insieme a qualsiasi ID Mantle, elenca i prefissi di versione o gli ID completi che desideri mantenere selezionabili. Vedere Comportamento di merge.

Restrizioni del modello dell'organizzazione

Gli amministratori dell'organizzazione sui piani Claude Enterprise limitano quali modelli i membri possono eseguire disabilitando i singoli modelli nella console di amministrazione claude.ai. Questa restrizione viene consegnata con i diritti dell'account quando Claude Code si autentica, separata da qualsiasi elenco availableModels nelle impostazioni, e il server applica la stessa restrizione indipendentemente quando una sessione viene creata. Richiede Claude Code v2.1.187 o successivo.

La restrizione si applica quando un membro accede o utilizza la propria chiave API. Le credenziali con ambito organizzativo, come le chiavi di servizio dell'organizzazione, non sono legate a un utente, quindi la restrizione non si applica a loro.

La Claude Console non ha controllo di restrizione del modello. Le organizzazioni senza un piano Claude Enterprise, incluse quelle i cui membri si autenticano tramite l'API Anthropic, limitano i modelli con availableModels nelle impostazioni gestite, aggiungendo enforceAvailableModels per coprire l'opzione Predefinito. Queste impostazioni vengono applicate da Claude Code stesso, non dal server.

Un modello limitato è nascosto dal selezionatore /model. Selezionarlo per nome con --model, la variabile di ambiente ANTHROPIC_MODEL, o l'impostazione model mostra l'avviso Model "<name>" is restricted by your organization's settings. Using <model> instead. e la sessione inizia su un modello consentito. Digitare /model <name> per un modello limitato viene rifiutato con Model '<name>' is restricted by your organization's settings. Run /model to choose a different model. e la sessione mantiene il suo modello attuale.

Un alias di famiglia di modelli come opus si risolve nel suo modello usuale quando l'organizzazione lo consente. Quando l'organizzazione limita quel modello, Claude Code sostituisce la versione più recente della famiglia che l'organizzazione consente, con lo stesso avviso di sostituzione. /model <alias> viene rifiutato solo quando ogni versione della sua famiglia è limitata; un alias impostato con --model, ANTHROPIC_MODEL, o l'impostazione model viene comunque sostituito all'avvio in quel caso. Prima della versione 2.1.205, un alias di famiglia veniva sostituito o rifiutato in base alla sua versione più recente rilasciata da sola, anche quando una versione precedente era consentita.

Le restrizioni si applicano a livello di organizzazione o per ruolo:

  • Disabilitare un modello a livello di organizzazione lo rimuove per ogni membro.
  • L'accesso a livello di ruolo concede modelli diversi a diversi ruoli personalizzati, e un membro che detiene diversi ruoli può utilizzare qualsiasi modello che uno dei suoi ruoli concede.
  • I modelli Haiku sono sempre disponibili e non possono essere disabilitati, quindi ogni membro mantiene almeno un modello utilizzabile.
  • Un cambio di accesso ha effetto su nuove richieste entro circa un minuto; il selezionatore /model lo riflette la prossima volta che una sessione inizia.

Entrambe le restrizioni si applicano insieme: un modello è selezionabile solo quando è consentito da availableModels e non limitato dall'organizzazione. Le restrizioni dell'organizzazione raggiungono le sessioni sull'API Anthropic e sui distribuzioni LLM gateway solo; su qualsiasi altro provider, utilizza availableModels invece.

Modello predefinito dell'organizzazione

Gli amministratori dell'organizzazione nei piani Claude Enterprise possono impostare un modello predefinito per i membri di Claude Code dall'admin console di claude.ai, per l'intera organizzazione o per ruolo personalizzato. Quando ne viene impostato uno, l'opzione Predefinito si risolve in quel modello. Richiede Claude Code v2.1.196 o versione successiva.

La riga Predefinito nel selettore /model mostra il nome del modello predefinito dell'organizzazione con l'etichetta Org default. L'etichetta recita Org default indipendentemente dal fatto che l'amministratore abbia impostato il modello predefinito per l'intera organizzazione o per il vostro ruolo. Un modello predefinito del ruolo copre i membri di quel ruolo personalizzato e ha la precedenza sul modello predefinito a livello di organizzazione; quando diversi vostri ruoli impostano modelli predefiniti diversi, si applica il modello più capace.

Il modello predefinito dell'organizzazione è un punto di partenza, non una restrizione. Queste selezioni hanno la precedenza su di esso:

  • il flag --model e la variabile di ambiente ANTHROPIC_MODEL
  • un valore model nelle impostazioni gestite o fornito tramite --settings
  • un valore model nelle vostre impostazioni utente, progetto o locali, incluso un modello che salvate con /model

Gli amministratori possono anche configurare il modello predefinito dell'organizzazione per ignorare la selezione dell'utente. Con l'override attivato, ha la precedenza sul valore model nelle impostazioni utente, progetto e locali, quindi un modello che salvate con /model si applica per la sessione corrente e il modello predefinito dell'organizzazione ritorna al prossimo avvio. Quando la vostra selezione differisce, /model mostra Your organization's default (<model>) applies on restart. Il flag --model, ANTHROPIC_MODEL, le impostazioni gestite e --settings hanno ancora la precedenza anche con l'override attivato. L'override è disponibile per un set limitato di organizzazioni; chiedete al vostro team di account Anthropic sulla disponibilità.

Per limitare quali modelli i membri possono selezionare, utilizzate restrizioni del modello dell'organizzazione o availableModels invece.

Claude Code legge il modello predefinito dell'organizzazione una sola volta all'avvio, quindi un modello predefinito che l'amministratore cambia durante la sessione ha effetto al prossimo avvio.

Quando il modello predefinito dell'organizzazione non ignora la selezione dell'utente, il primo avvio interattivo dopo che l'amministratore lo cambia cancella la chiave model dalle vostre impostazioni utente una sola volta, in modo che il nuovo modello predefinito si applichi. Non cambia nient'altro nel file, e un modello che salvate con /model dopo quel lancio viene mantenuto.

Il modello predefinito dell'organizzazione passa attraverso questi controlli di restrizione prima di essere adottato:

  • availableModels da solo non si applica al modello predefinito dell'organizzazione, quindi un modello predefinito dell'organizzazione al di fuori della lista di autorizzazione si applica comunque. Quando enforceAvailableModels è anche impostato, un modello predefinito dell'organizzazione al di fuori della lista di autorizzazione viene rimappato alla prima voce della lista di autorizzazione, come qualsiasi altro Predefinito
  • un modello predefinito dell'organizzazione che restrizioni del modello dell'organizzazione negano per il vostro account viene sostituito dal modello più recente consentito nella sua famiglia, o da una famiglia a costo inferiore quando ogni versione di essa è limitata
  • un modello predefinito dell'organizzazione che non è disponibile per il vostro account affatto viene saltato, e l'opzione Predefinito si risolve come farebbe senza un modello predefinito dell'organizzazione

A partire dalla v2.1.199, quando il modello predefinito dell'organizzazione è una famiglia di modelli diversa dal modello predefinito usuale del tipo di account vostro, il selettore /model mantiene una riga separata per quella famiglia usuale, in modo che possiate comunque passare ad essa per una sessione. Dalla v2.1.196 alla v2.1.198 quella riga manca dal selettore.

Il modello predefinito dell'organizzazione raggiunge solo le sessioni autenticate con l'API Anthropic. Per impostare un modello predefinito in qualsiasi altro luogo, incluse le distribuzioni LLM gateway, utilizzate la chiave model nelle impostazioni gestite invece.

Limiti di sforzo dell'organizzazione

La vostra organizzazione può limitare il livello di sforzo in due modi. Su un piano Claude Enterprise, gli amministratori dell'organizzazione impostano limiti di sforzo per ruolo, descritti di seguito. Su qualsiasi piano e qualsiasi provider, inclusi Amazon Bedrock, Google Cloud's Agent Platform e Microsoft Foundry, l'impostazione gestita maxEffortLevel limita lo sforzo sul client. Quando entrambi si applicano a un modello, si applica il limite inferiore.

Gli amministratori dell'organizzazione nei piani Claude Enterprise possono impostare un livello di sforzo massimo per modello per ogni ruolo personalizzato, insieme alle restrizioni del modello a livello di organizzazione. I livelli superiori al limite non vengono offerti nel selettore /effort, e denominare un livello superiore con --effort o /effort viene eseguito al limite. Nelle sessioni interattive e nelle esecuzioni in testo semplice --print, un avviso nomina i livelli richiesti e applicati; con output json o stream-json o negli agenti in background, il limite si applica silenziosamente. I limiti sono per modello, quindi il cambio di modelli può modificare quali livelli sono disponibili. Quando diversi vostri ruoli concedono lo stesso modello, si applica il limite meno restrittivo. Richiede Claude Code v2.1.195 o successivo.

I limiti di sforzo vengono forniti insieme alle restrizioni del modello dell'organizzazione e raggiungono le stesse sessioni.

Comportamento speciale del modello

Impostazione del modello `default`

Il comportamento di default dipende dal tipo di account:

  • Max, Team Premium, Enterprise e Anthropic API: predefinito su Opus 5
  • Claude Platform su AWS, Amazon Bedrock e Google Cloud's Agent Platform: predefinito su Opus 5
  • Pro e Team Standard: predefinito su Sonnet 5
  • Microsoft Foundry: predefinito su Sonnet 4.5

Prima della v2.1.219, default si risolveva in Opus 4.8 su Anthropic API, Max, Team Premium e Enterprise con pagamento a consumo da v2.1.154, e su Claude Platform su AWS, Amazon Bedrock e Google Cloud's Agent Platform da v2.1.207. Prima della v2.1.207, default si risolveva in Opus 4.7 su Claude Platform su AWS e in Sonnet 4.5 su Amazon Bedrock e Google Cloud's Agent Platform.

Quando un amministratore ha impostato un modello predefinito dell'organizzazione, default si risolve in quel modello invece del valore predefinito del tipo di account sopra indicato. Richiede Claude Code v2.1.196 o successiva. default può anche risolversi nel modello impostato con ANTHROPIC_DEFAULT_MODEL, secondo le condizioni elencate nella relativa sezione.

Quando le impostazioni gestite applicano l'elenco consentito per il modello predefinito e il valore predefinito del tipo di account non è in availableModels, default si risolve nel valore predefinito applicato invece del valore predefinito del tipo di account sopra indicato. Quando entrambi si applicano, il valore predefinito dell'organizzazione sostituisce prima il valore predefinito del tipo di account e l'applicazione si applica quindi ad esso: un valore predefinito dell'organizzazione nell'elenco consentito viene mantenuto, mentre uno al di fuori dell'elenco si risolve nel valore predefinito applicato.

I modelli Fable non sono il valore predefinito del tipo di account su nessun piano o provider. Sceglierne uno con /model lo salva come modello selezionato nelle impostazioni utente, in modo che le sessioni successive inizino su di esso. Per il cambio una tantum che Claude Code apporta a una selezione Fable 5 salvata nella v2.1.257, vedere Lavorare con Fable.

Impostazione del modello `opusplan`

L'alias del modello opusplan fornisce un approccio ibrido automatizzato:

  • In modalità piano: utilizza opus per il ragionamento complesso e le decisioni architettoniche
  • In modalità esecuzione: passa automaticamente a sonnet per la generazione del codice e l'implementazione

Questo abbina il ragionamento di Opus per la pianificazione con l'efficienza di Sonnet per l'esecuzione.

La fase Opus in modalità piano utilizza la stessa finestra di contesto dell'impostazione del modello opus. Sui livelli di abbonamento in cui Opus viene aggiornato automaticamente a 1M di contesto, opusplan riceve l'aggiornamento anche in modalità piano. Per forzare il contesto 1M per entrambe le fasi quando non sei su un livello di aggiornamento automatico, imposta il modello su opusplan[1m], ad esempio con /model opusplan[1m]. Impostarlo con /model richiede Claude Code v2.1.265 o successiva; nelle versioni precedenti, usa il flag --model o l'impostazione model.

Quando availableModels esclude l'Opus più recente ma consente una versione precedente, ad esempio ["sonnet", "claude-opus-4-6"], opusplan utilizza l'Opus più recente consentito per la pianificazione e rimane su Sonnet solo quando ogni Opus è escluso. Una sessione Haiku che normalmente si aggiornerebbe a Sonnet in modalità piano utilizza allo stesso modo il Sonnet più recente consentito e rimane su Haiku solo quando ogni Sonnet è escluso. Prima della v2.1.205, la modalità piano rimase sul modello della sessione ogni volta che la versione più recente della famiglia di aggiornamento era esclusa, anche quando l'elenco consentito ne consentiva una precedente.

La sostituzione di una versione precedente consentita si applica su Anthropic API e Claude Platform su AWS. Su Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry e Mantle, i cui deployment utilizzano ID modello specifici del provider, la modalità piano rimane sul modello della sessione ogni volta che il modello di aggiornamento è escluso.

Per un approccio ibrido in cui Claude decide a metà attività quando consultare un secondo modello piuttosto che passare al confine del piano, vedere lo strumento advisor.

Catene di modelli di fallback

Quando il modello primario è sovraccarico, non disponibile o restituisce un altro errore del server non ripetibile, Claude Code può passare a un modello di fallback invece di non riuscire nella richiesta. Gli errori di autenticazione, fatturazione, limite di velocità, dimensione della richiesta e trasporto, e un rifiuto dalla verifica della politica della tua organizzazione, non attivano mai un passaggio; questi seguono il loro normale retry e gestione degli errori.

Configura uno o più modelli di fallback e Claude Code li prova in ordine, mostrando un avviso quando passa. Il passaggio dura solo per il turno corrente, quindi il tuo prossimo messaggio prova prima il modello primario di nuovo. Claude Code limita le catene a tre modelli dopo la rimozione dei duplicati e ignora le voci extra.

Imposta una catena per una sessione con il flag --fallback-model, che accetta un elenco separato da virgole:

claude --fallback-model sonnet,haiku

Per mantenere una catena tra le sessioni, imposta fallbackModel in settings come array:

{
  "fallbackModel": ["claude-sonnet-5", "claude-haiku-4-5"]
}

Il flag --fallback-model ha la precedenza sull'impostazione fallbackModel. Ogni voce accetta un nome di modello o un alias, e "default" si espande al modello predefinito.

Claude Code non conferma la catena all'avvio e /status non la visualizza. L'avviso mostrato quando si verifica un passaggio è il primo segno visibile che un fallback è configurato.

Quando una richiesta fallisce, Claude Code prova ogni voce in ordine finché una non l'accetta. Una voce che non può essere raggiunta nemmeno, come un modello ritirato bloccato nelle impostazioni, fallisce alla successiva nello stesso modo. Claude Code rimuove due tipi di voce prima di quel percorso:

  • Al di fuori dell'elenco consentito: Claude Code elimina qualsiasi voce non consentita da availableModels quando legge la catena.
  • Finestra di contesto più piccola durante la compattazione: la catena copre anche la compattazione, ma Claude Code non farà fallback a un modello con una finestra di contesto più piccola di quella del primario, poiché il riassunto lì taglierebbe prima parte della conversazione. Se ogni fallback è più piccolo, la compattazione mostra l'errore originale e puoi riprovare.

Claude Code applica anche la catena ai subagenti. Quando la richiesta di un subagente fallisce, Claude Code prova i tuoi modelli di fallback configurati in ordine, e il subagente continua sul modello che accetta la richiesta. Il modello della tua sessione rimane invariato. Prima della v2.1.247, un fallimento che la catena copriva terminava il subagente.

Fallback automatico del modello

Questa sezione copre il fallback basato sul contenuto dai modelli Fable e Opus 5. Per il fallback basato sulla disponibilità quando un modello è sovraccarico o non disponibile, vedere Catene di modelli di fallback.

I modelli Fable e Opus 5 vengono eseguiti con classificatori di sicurezza, che il più delle volte contrassegnano il contenuto di sicurezza informatica e biologia. Quando un classificatore contrassegna una richiesta e la categoria contrassegnata ha un modello di fallback, Claude Code riesegue la richiesta su quel modello e mostra un avviso nella trascrizione. Per queste due categorie, il modello di fallback dipende da quale modello ha rifiutato:

  • Fable 5.1 e Fable 5: le richieste contrassegnate per biologia vengono rieseguite su Opus 5, e le richieste contrassegnate per sicurezza informatica vengono rieseguite su Opus 4.8.
  • Opus 5: le richieste contrassegnate per sicurezza informatica vengono rieseguite su Opus 4.8. Le richieste contrassegnate per biologia terminano con un rifiuto, perché Opus 5 esegue i propri classificatori di biologia senza modello di fallback.

Su Amazon Bedrock, Google Cloud's Agent Platform e Microsoft Foundry, Claude Code risolve questi target attraverso il tuo deployment, e se imposti ANTHROPIC_DEFAULT_OPUS_MODEL, le categorie che hanno un fallback vengono rieseguite sul modello bloccato; vedere Abilitare il fallback su Bedrock, Agent Platform e Foundry.

Dopo un fallback, la sessione continua sul modello di fallback. Per tornare al tuo modello originale, esegui /model.

Il fallback basato sulla categoria richiede Claude Code v2.1.219 o successiva. Prima della v2.1.219, ogni richiesta Fable 5 contrassegnata veniva rieseguita sul modello Opus predefinito del tuo provider, e Opus 5 non era una fonte di fallback.

Il modello di fallback viene controllato rispetto a availableModels. Quando è bloccato, non si verifica alcun fallback. Il rifiuto viene mostrato come un errore normale e il modello della sessione rimane invariato.

Verificare cosa ha attivato il fallback

Il fallback può attivarsi alla prima richiesta di una sessione, prima di inviare qualcosa di insolito, perché la prima richiesta contiene il contesto dell'area di lavoro come il contenuto di CLAUDE.md e lo stato di git. Un repository che contiene materiale di sicurezza o biologia può attivare il classificatore solo su quel contesto.

Per verificare se le personalizzazioni sono il trigger, avvia una sessione con claude --safe-mode, che disabilita le personalizzazioni come CLAUDE.md, skills, server MCP e hooks. Lo stato di git e i nomi delle directory non sono personalizzazioni e sono ancora inclusi.

Chiedere prima di passare

Per decidere cosa accade ogni volta che una richiesta viene contrassegnata, piuttosto che passare automaticamente, esegui /config e disattiva Cambia modelli quando un messaggio viene contrassegnato, oppure imposta switchModelsOnFlag su false nel tuo file di impostazioni. Una richiesta contrassegnata mette quindi in pausa la sessione con due opzioni: passare al modello di fallback o modificare il prompt e riprovare sul modello corrente.

Alcuni casi si comportano diversamente:

  • Quando la categoria contrassegnata non ha un modello di fallback, come un flag di biologia su Opus 5, Claude Code non mostra il prompt e la richiesta termina con il rifiuto.
  • Se entrambi i modelli contrassegnano la stessa richiesta, puoi modificare il prompt e riprovare, o avviare una nuova sessione.
  • Su sessioni mobili Claude Code sul web, la modifica e il retry non sono supportati. Cambia modelli o continua la sessione da un browser desktop o dall'app desktop.
  • In modalità non interattiva e integrazioni SDK che non possono mostrare il prompt, una richiesta contrassegnata termina il turno con un rifiuto.
  • Quando il target di fallback è bloccato da availableModels, Claude Code non mostra il prompt. La richiesta contrassegnata termina con il rifiuto, come il fallback automatico quando il target è bloccato.

Abilitare il fallback su Bedrock, Agent Platform e Foundry

Su Amazon Bedrock, Google Cloud's Agent Platform e Microsoft Foundry, gli ID modello sono specifici del provider, quindi il fallback automatico funziona solo quando Claude Code può identificare entrambi i modelli coinvolti:

  • Claude Code deve riconoscere il modello corrente come fonte di fallback. Fable 5.1 e Fable 5 vengono riconosciuti quando l'ID modello contiene claude-fable-5, corrisponde al valore di ANTHROPIC_DEFAULT_FABLE_MODEL o è mappato con modelOverrides. Opus 5 viene riconosciuto dal suo ID modello del provider o da un mapping modelOverrides.
  • Il modello di fallback deve risolversi nel tuo deployment. Se imposti ANTHROPIC_DEFAULT_OPUS_MODEL, le richieste contrassegnate vengono rieseguite su quel modello per ogni categoria che ha un fallback; un flag di biologia su Opus 5 termina comunque con un rifiuto. Se non lo imposti, le richieste contrassegnate per sicurezza informatica vengono rieseguite su una voce Opus 4.8 nell'elenco dei modelli del provider, e le richieste contrassegnate per biologia da un modello Fable su una voce Opus 5.

Se uno dei modelli non può essere identificato, Claude Code non passa automaticamente. La richiesta contrassegnata termina con un messaggio di rifiuto e puoi cambiare modelli con /model e riprovare. Impostare ANTHROPIC_DEFAULT_FABLE_MODEL sul tuo ID modello Fable abilita il riconoscimento di Fable. Impostare ANTHROPIC_DEFAULT_OPUS_MODEL su un ID modello Opus fornisce alle categorie contrassegnate un target di fallback, a meno che il pin non nomini un modello al di fuori della famiglia Opus o il modello che ha rifiutato; quindi Claude Code non passa e il rifiuto rimane.

Ricerca sulla sicurezza e carichi di lavoro biologici

I carichi di lavoro in sicurezza offensiva o biologia, inclusi test di penetrazione, esercizi Capture the Flag (CTF) e basi di codice adiacenti alla biologia, attivano il fallback frequentemente, spesso alla prima richiesta. Per un lavoro biologico sostanziale su Fable 5.1 o Fable 5, Claude Code sposta la sessione a Opus 5 alla prima richiesta contrassegnata, e le successive richieste contrassegnate per biologia terminano in rifiuti lì, perché Opus 5 non ha fallback biologico. Su Opus 5, ricevi quei rifiuti dalla prima richiesta contrassegnata.

Questo è il routing previsto per questi domini, non un flag dell'account. Se la tua organizzazione ha bisogno di capacità di classe Fable per questo lavoro, chiedi al tuo team di account Anthropic informazioni sui programmi di accesso affidabile.

Regola il livello di sforzo

I livelli di sforzo controllano il ragionamento adattivo, che consente al modello di decidere se e quanto pensare ad ogni passo in base alla complessità dell'attività. Lo sforzo inferiore è più veloce e più economico per attività semplici e circoscritte, mentre lo sforzo superiore fornisce un ragionamento più profondo per problemi complessi.

I livelli di sforzo disponibili dipendono dal modello. I modelli non elencati qui non supportano lo sforzo:

Modello Livelli
Fable 5.1 e Fable 5 low, medium, high, xhigh, max
Opus 5, Sonnet 5, Opus 4.8 e Opus 4.7 low, medium, high, xhigh, max
Opus 4.6 e Sonnet 4.6 low, medium, high, max

Se imposti un livello che il modello attivo non supporta, Claude Code fallback al livello supportato più alto pari o inferiore a quello impostato. Ad esempio, xhigh viene eseguito come high su Opus 4.6. La tua organizzazione o le tue stesse impostazioni possono anche limitare i livelli che un modello offre; vedere Limiti di sforzo dell'organizzazione.

Con l'impostazione ultracode disattivata, Claude Code risolve il livello di sforzo della sessione in questo ordine, prendendo il primo che si applica:

  1. Una scelta esplicita: la variabile di ambiente CLAUDE_CODE_EFFORT_LEVEL, l'avvio con --effort, o /effort nella sessione (un /effort non interattivo ha effetto più ristretto)
  2. Lo sforzo predefinito del modello, su Fable 5, Opus 4.8 o Opus 4.7: dalla prima volta che esegui uno di questi modelli, Claude Code mantiene lo sforzo predefinito di quel modello tra le sessioni, anche quando le tue impostazioni risolvono un livello diverso. Opus 5 e Fable 5.1 non hanno tale mantenimento. Se un livello che imposti termina il mantenimento dipende da come lo imposti, ad esempio:
    • Termina il mantenimento: confermare un livello in modo interattivo, con Enter nel cursore /effort o nel selettore /model o con un livello digitato dopo /effort, o selezionare un livello dal controllo dello sforzo di un dispositivo connesso Remote Control
    • Lascia il mantenimento in vigore per le sessioni successive: --effort all'avvio, o s nel cursore /effort o nel selettore /model
  3. Le tue impostazioni: il livello che hai salvato per il modello o una chiave effortLevel, con la precedenza tra loro e tra i file di impostazioni indicata in modelSettings
  4. Lo sforzo predefinito del modello: high su ogni modello che supporta lo sforzo, tranne che Opus 4.7 predefinito a xhigh e, quando la tua organizzazione imposta un livello di sforzo predefinito per il suo modello predefinito dell'organizzazione, quel livello è il predefinito quando esegui quel modello

Quando imposti low, medium, high o xhigh in una sessione interattiva sulla tua macchina, scegli quanto dura selezionando come lo confermi:

  • Enter nel cursore /effort o nel selettore /model, o un livello digitato dopo /effort: salva il livello come predefinito e applicalo nelle sessioni successive
  • s nel cursore /effort o nel selettore /model: applica il livello solo a questa sessione. Richiede Claude Code v2.1.257 o successiva

Claude Code salva il livello per modello, sotto la chiave modelSettings nelle tue impostazioni utente, quindi ogni modello mantiene il suo livello salvato.

max è il livello di ragionamento più profondo. A meno che non lo imposti tramite la variabile di ambiente CLAUDE_CODE_EFFORT_LEVEL, Claude Code applica max solo alla sessione corrente.

Quando imposti un livello con /effort in un'esecuzione -p, Claude Code lo applica solo a quella sessione e non lo salva come predefinito. Su Fable 5, Opus 4.8 e Opus 4.7, quel livello inoltre non termina il mantenimento dello sforzo predefinito del modello né lo sostituisce per la sessione. Mentre quel mantenimento è in vigore, un /effort non interattivo segnala Not applied, quindi passa --effort all'avvio.

Il menu /effort offre anche ultracode. Ultracode è un'impostazione di Claude Code piuttosto che un livello di sforzo del modello: invia xhigh al modello e inoltre ha Claude orchestrare flussi di lavoro dinamici per attività sostanziali. Per dove può essere impostato in modo persistente, vedere l'impostazione ultracode.

Puoi attivare ultracode attraverso uno dei seguenti:

  • /effort: esegui /effort ultracode, o selezionalo dal menu
  • Flag --effort: avvia con claude --effort ultracode, che avvia la sessione a sforzo xhigh con ultracode attivato
  • Impostazione ultracode: imposta "ultracode": true in un file di impostazioni, con --settings, o in una richiesta di controllo Agent SDK. Una richiesta applyFlagSettings() accetta anche effortLevel: "ultracode"
  • Selettore /model: sposta il cursore dello sforzo su ultracode con i tasti freccia mentre scegli un modello. Claude Code lo attiva per la sessione corrente, anche quando salvi quel modello come predefinito

Passare ultracode al flag --effort o al valore Agent SDK effortLevel richiede Claude Code v2.1.203 o successiva. Prima della v2.1.203, --effort ultracode stampava Unknown --effort value 'ultracode' e la sessione iniziava allo sforzo predefinito.

L'impostazione effortLevel persistente e la variabile di ambiente CLAUDE_CODE_EFFORT_LEVEL non accettano ultracode. Quando CLAUDE_CODE_EFFORT_LEVEL è impostato su un livello diverso da xhigh, le richieste vengono eseguite a quel livello e l'orchestrazione del flusso di lavoro di ultracode rimane inattiva. Selezionare ultracode mostra quindi un avviso che la variabile di ambiente sostituisce lo sforzo per la sessione.

Ultracode non è disponibile quando:

In questi casi --effort ultracode avvia la sessione con ultracode disattivato, al livello di sforzo più alto che il modello e qualsiasi limite consentono, fino a xhigh.

Scegli un livello di sforzo

Ogni livello scambia la spesa di token rispetto alla capacità. Il predefinito si adatta alla maggior parte dei compiti di codifica; regola quando desideri un equilibrio diverso.

Livello Quando usarlo
low Riservato per attività brevi, circoscritte e sensibili alla latenza che non sono sensibili all'intelligenza
medium Riduce l'utilizzo di token per il lavoro sensibile ai costi che può scambiare un po' di intelligenza
high Bilancia l'utilizzo di token e l'intelligenza. Il predefinito su ogni modello tranne Opus 4.7
xhigh Ragionamento più profondo a spesa di token più elevata. Il predefinito su Opus 4.7
max Può migliorare le prestazioni su attività impegnative ma può mostrare rendimenti decrescenti ed è soggetto a eccesso di riflessione. Prova prima di adottare ampiamente
ultracode Un'impostazione di Claude Code che pianifica un flusso di lavoro dinamico per ogni attività sostanziale con ragionamento xhigh per messaggio

La scala dello sforzo è calibrata per modello, quindi lo stesso nome di livello non rappresenta lo stesso valore sottostante tra i modelli.

Usa ultrathink per il ragionamento profondo una tantum

Includi ultrathink in qualsiasi punto del tuo prompt per richiedere un ragionamento più profondo su quel turno senza modificare l'impostazione dello sforzo della sessione. Claude Code riconosce la parola chiave e aggiunge un'istruzione nel contesto. Il livello di sforzo inviato all'API rimane invariato. Claude Code passa altre frasi come "think", "think hard" e "think more" come testo di prompt ordinario e non le riconosce come parole chiave.

Imposta il livello di sforzo

Puoi modificare lo sforzo attraverso uno dei seguenti:

  • /effort: esegui /effort senza argomenti per aprire un cursore interattivo, /effort seguito da un nome di livello per impostarlo direttamente, o /effort auto per cancellare il tuo livello salvato per il modello attivo. Puoi eseguirlo mentre Claude sta lavorando, e una volta confermato l'avviso della cache, se Claude Code ne mostra uno, Claude Code applica il nuovo livello alla richiesta successiva nel turno
  • In /model: usa i tasti freccia sinistra/destra per regolare il cursore dello sforzo quando selezioni un modello
  • Flag --effort: passa un nome di livello per impostarlo per una singola sessione quando avvii Claude Code
  • Variabile di ambiente: imposta CLAUDE_CODE_EFFORT_LEVEL su un nome di livello o auto
  • Impostazioni: imposta un livello per modello in modelSettings, o imposta effortLevel su low, medium, high o xhigh come predefinito per i modelli senza uno. max non è accettato in nessuna delle due chiavi, e ultracode ha la sua propria chiave ultracode
  • Da un dispositivo connesso: in una sessione Remote Control, scegli un livello dal controllo dello sforzo sul tuo telefono o nel tuo browser. Il livello si applica solo alla sessione corrente, anche se termina anche il mantenimento dello sforzo predefinito del modello. Richiede Claude Code v2.1.234 o successiva
  • Frontmatter di skill e subagente: imposta effort in un file markdown skill o subagente per sostituire il livello di sforzo quando quella skill o subagente viene eseguito

Lo sforzo del frontmatter si applica quando quella skill o subagente è attivo, sostituendo il livello della sessione ma non la variabile di ambiente. Un maxEffortLevel o limite di sforzo dell'organizzazione limita comunque il livello a cui la skill o il subagente viene eseguito.

Su Fable 5, Opus 4.8 e Opus 4.7, lo sforzo del frontmatter si applica anche mentre il mantenimento dello sforzo predefinito del modello è in vigore. Prima della v2.1.267, il mantenimento aveva la precedenza e Claude Code ignorava il livello del frontmatter mentre il mantenimento era attivo.

Se imposti effortLevel nelle impostazioni gestite, Claude Code lo applica al passo delle impostazioni dell'ordine di risoluzione dello sforzo, e gli utenti possono comunque modificare il livello con /effort o --effort. Per mantenere gli utenti a o sotto un livello, imposta maxEffortLevel.

Il cursore dello sforzo appare in /model quando è selezionato un modello supportato. Il livello di sforzo corrente è anche mostrato nell'intestazione della sessione accanto al nome del modello, ad esempio "con sforzo basso", in modo che tu possa confermare quale impostazione è attiva senza aprire /model. Il piè di pagina mostra anche brevemente il livello di sforzo all'avvio e quando cambia.

Ragionamento adattivo e budget di pensiero fissi

Il ragionamento adattivo rende il pensiero opzionale ad ogni passo, quindi Claude può rispondere più velocemente ai prompt di routine e riservare il pensiero più profondo ai passi che ne traggono beneficio. Se desideri che Claude pensi più o meno spesso di quanto il livello corrente produce, puoi dirlo direttamente nel tuo prompt o in CLAUDE.md; il modello risponde a quella guida entro la sua impostazione di sforzo.

I modelli Fable, Sonnet 5 e Opus 4.7 e successivi utilizzano sempre il ragionamento adattivo. La modalità di budget di pensiero fisso e CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING non si applicano a loro.

Su Opus 4.6 e Sonnet 4.6, puoi impostare CLAUDE_CODE_DISABLE_ADAPTIVE_THINKING=1 per tornare al precedente budget di pensiero fisso controllato da MAX_THINKING_TOKENS. Vedere variabili di ambiente.

Pensiero esteso

Il pensiero esteso è il ragionamento che Claude emette prima di rispondere. Sui modelli che supportano il ragionamento adattivo, il livello di sforzo è il controllo primario per quanto pensiero accade; le impostazioni di seguito attivano o disattivano il pensiero e controllano come viene visualizzato. Con il pensiero disattivato su Anthropic API, Claude Code invia sforzo high invece di un livello superiore ai modelli che sa non accettano quella combinazione, come Opus 5.

Controllo Come impostarlo
Attiva/disattiva per la sessione corrente Premi Option+T su macOS o Alt+T su Windows e Linux
Imposta il predefinito globale Esegui /config e attiva/disattiva la modalità di pensiero. Salvato come alwaysThinkingEnabled in ~/.claude/settings.json
Disabilita tramite una variabile di ambiente Imposta MAX_THINKING_TOKENS=0, che disattiva il pensiero su Anthropic API tranne sui modelli Fable. Su provider di terze parti, Claude Code omette il parametro thinking, e i modelli di ragionamento adattivo potrebbero comunque pensare. Altri valori si applicano solo con un budget di pensiero fisso

Non puoi disattivare il pensiero sui modelli Fable. L'attivazione/disattivazione della sessione, alwaysThinkingEnabled e MAX_THINKING_TOKENS=0 non hanno effetto lì, e un modello Fable decide per passo quanto pensare in base al livello di sforzo.

Claude Code comprime l'output di pensiero per impostazione predefinita. Premi Ctrl+O per attivare/disattivare la modalità dettagliata e vedi il ragionamento come testo grigio in corsivo. Le sessioni interattive su Anthropic API ricevono blocchi di pensiero redatti per impostazione predefinita, quindi imposta showThinkingSummaries: true nelle impostazioni se desideri i riassunti completi disponibili quando espandi. Ti viene addebitato per tutti i token di pensiero generati, anche quando compressi o redatti.

Contesto esteso

Fable 5.1, Fable 5, Sonnet 5, Opus 4.6 e successivi e Sonnet 4.6 supportano una finestra di contesto di 1 milione di token per sessioni lunghe con basi di codice di grandi dimensioni.

La disponibilità varia in base al modello e al piano. Su Anthropic API, Fable 5.1, Fable 5, Sonnet 5 e Opus 4.7 e successivi vengono eseguiti con la finestra 1M per impostazione predefinita.

Su piani Max, Team e Enterprise, inclusi sia i posti Team Standard che Team Premium, Opus viene aggiornato automaticamente a contesto 1M senza configurazione aggiuntiva. Sonnet 4.6 con contesto 1M non fa parte dell'aggiornamento automatico e richiede crediti di utilizzo su ogni piano di abbonamento, incluso Max.

Piano Opus con contesto 1M Sonnet 4.6 con contesto 1M
Max, Team e Enterprise Incluso nell'abbonamento Richiede crediti di utilizzo
Pro Richiede crediti di utilizzo Richiede crediti di utilizzo
API e pagamento a consumo Accesso completo Accesso completo

Claude Code controlla questi requisiti del piano solo quando si connette direttamente a Anthropic API. Se punti ANTHROPIC_BASE_URL a un gateway LLM e il tuo accesso salvato a claude.ai rimane la credenziale attiva, Claude Code non controlla i crediti di utilizzo del tuo piano. Le opzioni [1m] rimangono disponibili in /model, e il gateway decide se la richiesta ha successo. Prima della v2.1.229, Claude Code rifiutava /model sonnet[1m] in quella configurazione quando non poteva confermare i crediti di utilizzo sull'account.

Per disattivare il contesto 1M, imposta CLAUDE_CODE_DISABLE_1M_CONTEXT=1. Claude Code rimuove le varianti di modello 1M dal selettore di modelli. Su modelli con una finestra 1M nativa, come Sonnet 5 e i modelli Fable, tratta anche il modello come avente una finestra di contesto di 200K:

  • Con la compattazione automatica attivata, le sessioni si compattano al confine 200K attraverso la compattazione automatica. Impostare la finestra di compattazione automatica sopra 200K non solleva il mantenimento, perché Claude Code limita quella finestra alla finestra di contesto del modello.
  • Con la compattazione automatica disattivata, le sessioni si fermano al confine 200K con l'errore di limite di contesto invece di compattarsi.

Prima della v2.1.223, Claude Code manteneva solo le sessioni Sonnet 5, Opus 4.8 e Opus 5 a 200K. Vedere variabili di ambiente.

La finestra di contesto 1M utilizza i prezzi standard del modello senza premio per i token oltre 200K. Per i piani in cui il contesto esteso è incluso nel tuo abbonamento, l'utilizzo rimane coperto dal tuo abbonamento. Per i piani che accedono al contesto esteso tramite crediti di utilizzo, i token vengono fatturati ai crediti di utilizzo.

Se il tuo account supporta il contesto 1M, l'opzione appare nel selettore /model nelle versioni più recenti di Claude Code. Se non la vedi, prova a riavviare la tua sessione.

Puoi anche usare il suffisso [1m] con alias di modello o nomi di modello completi:

# Usa l'alias opus[1m] o sonnet[1m]
/model opus[1m]
/model sonnet[1m]

# O aggiungi [1m] a un nome di modello completo
/model claude-opus-4-8[1m]

Finestra di contesto di Sonnet 5

Su Anthropic API, Sonnet 5 viene sempre eseguito con la finestra di contesto 1M. Non c'è variante 200K, nessun suffisso [1m] da selezionare e nessun credito di utilizzo richiesto su nessun piano. Le sessioni si compattano automaticamente prima che la finestra si riempia, a circa 967K token per impostazione predefinita; imposta CLAUDE_CODE_AUTO_COMPACT_WINDOW per scegliere una soglia diversa.

Due configurazioni limitano la finestra a 200K:

  • Gateway LLM: quando ANTHROPIC_BASE_URL punta a un gateway, Claude Code non può verificare il supporto 1M. Per usare la finestra completa, seleziona Sonnet 5 (1M context) nel selettore di modelli, che mappa a sonnet[1m].
  • CLAUDE_CODE_DISABLE_1M_CONTEXT=1: mantiene le sessioni su ogni modello con una finestra 1M nativa a una finestra 200K; vedere Contesto esteso per come il mantenimento viene applicato. Utile per i deployment che devono limitare il contesto.

Finestra di contesto e auto-compattazione

La finestra auto-compact è il livello di riempimento della finestra di contesto prima che Claude Code compatti la conversazione. Per informazioni su cosa la compattazione mantiene e scarta per ogni meccanismo, vedere What survives compaction.

Impostare la finestra auto-compact

È possibile impostare la finestra auto-compact in tre posizioni:

  • Per questa sessione e quelle successive: eseguire /autocompact con un valore, come /autocompact 500k. Claude Code lo salva nelle impostazioni utente come autoCompactWindow e lo applica alla sessione corrente; se un ambito di impostazioni con priorità più alta, come le impostazioni gestite, imposta la chiave, il comando salva il valore ma la sessione mantiene la finestra di tale ambito, e il comando lo comunica. Eseguire /autocompact auto per tornare alla finestra ottimizzata per il modello.
  • Per un singolo avvio: passare --autocompact all'avvio di Claude Code. Il flag sostituisce l'impostazione salvata per tale avvio senza modificarla, e claude --autocompact auto esegue la sessione alla finestra ottimizzata anche se l'impostazione salvata ha un valore. A differenza di /autocompact, il flag non è prevenuto da un ambito di impostazioni con priorità più alta, come le impostazioni gestite.
  • In script e ambienti cloud: impostare CLAUDE_CODE_AUTO_COMPACT_WINDOW. Mentre è impostato, ha precedenza sul comando, sul flag e sull'impostazione, e /autocompact segnala l'override invece di modificare la finestra.

Il comando e il flag accettano una dimensione della finestra da 100K a 1M token, in una qualsiasi di queste forme:

  • Un conteggio di token semplice, come 200000
  • Un suffisso k o M, come 500k o 1M
  • Un numero semplice da 100 a 1000, che significa migliaia, quindi 200 imposta 200.000

La variabile di ambiente accetta solo il conteggio di token semplice. Claude Code limita la finestra alla finestra di contesto del modello.

Soglie auto-compact predefinite

Se non si imposta una finestra auto-compact, Claude Code compatta quando la conversazione raggiunge il limite di contesto del modello, tranne in queste sessioni:

  • Le sessioni cloud si compattano mentre la conversazione si avvicina al limite del modello
  • Sonnet 4.6 e Opus 4.6 senza contesto esteso si compattano al limite di 200K, così come Opus 4.8 e Opus 5 quando vengono eseguiti con una finestra di contesto di 200K, come su Amazon Bedrock, Google Cloud's Agent Platform e Microsoft Foundry
  • Quando si imposta CLAUDE_CODE_DISABLE_1M_CONTEXT=1, i modelli con una finestra nativa di 1M, come Sonnet 5 e i modelli Fable, si compattano al limite di 200K
  • I modelli in esecuzione con una finestra nativa di 1M, come Sonnet 5, i modelli Fable e Opus 4.7 e versioni successive su Anthropic API, si compattano prima che la finestra si riempia, a circa 967K token per impostazione predefinita. Su Amazon Bedrock, Google Cloud's Agent Platform e Microsoft Foundry, Pin models for third-party deployments indica quali modelli vengono eseguiti con quella finestra; per le configurazioni che assegnano a Sonnet 5 200K, vedere Sonnet 5 context window
  • Le sessioni su un ID modello che Claude Code non riconosce, come un alias LLM gateway, si compattano alla finestra di contesto che Claude Code assume per l'ID; vedere Correct the window for a gateway or custom model ID

Correggere la finestra per un gateway o un ID modello personalizzato

Su un LLM gateway o un'altra distribuzione personalizzata, Claude Code può assumere una finestra di contesto per l'ID modello che differisce dalla finestra reale del modello, indipendentemente dal fatto che risolva l'ID a un modello Claude o meno. Impostare CLAUDE_CODE_MAX_CONTEXT_TOKENS alla finestra che Claude Code dovrebbe assumere invece.

Il modo in cui la variabile si applica dipende dall'ID. Claude Code tratta un ID come un provider o un'ortografia personalizzata quando non inizia con claude-, in qualsiasi maiuscola/minuscola, o quando porta un suffisso che Claude Code rimuove durante la lettura dell'ID, come la data @YYYYMMDD utilizzata su Google Cloud's Agent Platform. Prima della v2.1.259, Claude Code non contava un suffisso rimosso, quindi un ID claude- non riconosciuto con un suffisso di data era trattato come un nome claude- semplice.

Un provider non riconosciuto o un'ortografia personalizzata, la stessa ortografia con [1m] e ogni altro ID sono tre casi separati:

  • Se Claude Code non può risolvere un provider o un'ortografia personalizzata a un modello che riconosce e l'ID non contiene [1m], la variabile si applica direttamente e la compattazione proattiva continua alla finestra dichiarata.

  • Se Claude Code non può risolvere un provider o un'ortografia personalizzata a un modello che riconosce e l'ID contiene [1m], in qualsiasi maiuscola/minuscola, Claude Code assume una finestra di 1M per esso e la variabile non si applica da sola. Per correggere la finestra mantenendo la compattazione proattiva, impostare anche CLAUDE_CODE_DISABLE_1M_CONTEXT=1. Con quella variabile impostata, Claude Code dimensiona l'ID come la stessa ortografia senza [1m], quindi CLAUDE_CODE_MAX_CONTEXT_TOKENS si applica quando si applicherebbe a tale ortografia senza tag.

    Con una finestra dichiarata superiore a 200K, Claude Code mostra quindi un avviso di avvio che il limite di 200K non è applicato. L'avviso è previsto in questa configurazione.

  • Se l'ID si risolve a un modello che Claude Code riconosce, o l'ID è un nome claude- semplice senza suffisso per Claude Code da rimuovere, in qualsiasi maiuscola/minuscola, la variabile ha effetto solo quando si imposta anche DISABLE_COMPACT, che disabilita tutta la compattazione.

    Ad esempio, un ID che contiene un nome di modello Claude che Claude Code conosce, come anthropic/claude-opus-4-8, us.anthropic.claude-…-v1:0, o il datato claude-sonnet-4-5@20250929, si risolve a quel modello. Questo include gli ID che contengono anche [1m]: Claude Code risolve claude-opus-4-8[1m] a Opus 4.8 anche con CLAUDE_CODE_DISABLE_1M_CONTEXT impostato.

Per un ID modello che Claude Code non riconosce, impostare CLAUDE_CODE_DISABLE_UNKNOWN_MODEL_WINDOW_ENFORCEMENT=1 per fare in modo che Claude Code si compatti solo dopo che l'API rifiuta la conversazione con un errore di lunghezza eccessiva che Claude Code riconosce. Claude Code non esegue quel recupero quando un gateway riscrive l'errore con una formulazione che Claude Code non riconosce.

Verifica del modello corrente

È possibile vedere quale modello stai utilizzando attualmente in due posizioni:

  • Nella riga di stato, se ne hai una configurata
  • In /status, che visualizza anche le informazioni del tuo account

Aggiungere un'opzione di modello personalizzato

Utilizzare ANTHROPIC_CUSTOM_MODEL_OPTION per aggiungere una singola voce personalizzata al selettore /model senza sostituire gli alias incorporati. Questo è utile per testare ID di modello che Claude Code non elenca per impostazione predefinita. Per le distribuzioni di gateway LLM, Claude Code può popolare il selettore dall'endpoint /v1/models del gateway quando CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1 è impostato, quindi questa variabile è necessaria solo quando la scoperta è disabilitata o non restituisce il modello desiderato. Vedere gateway model discovery.

Per elencare invece diversi modelli, nel vostro ordine e con etichette che scegliete, impostare modelPicker. La sua voce specifica quali righe il selettore mantiene quando questo lineup sostituisce quello incorporato.

Questo esempio imposta tutte e tre le variabili per rendere selezionabile una distribuzione Opus instradata tramite gateway. Claude Code legge le variabili di ambiente all'avvio, quindi eseguire gli export prima di lanciare claude, o riavviare una sessione esistente per applicarle:

export ANTHROPIC_CUSTOM_MODEL_OPTION="my-gateway/claude-opus-5"
export ANTHROPIC_CUSTOM_MODEL_OPTION_NAME="Opus via Gateway"
export ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION="Custom deployment routed through the internal LLM gateway"

ANTHROPIC_CUSTOM_MODEL_OPTION_NAME e ANTHROPIC_CUSTOM_MODEL_OPTION_DESCRIPTION sono facoltativi:

  • Se omettete il nome, la voce mostra il nome del modello quando Claude Code riconosce l'ID, e l'ID del modello altrimenti.
  • Se omettete la descrizione, Claude Code utilizza Custom model (<model-id>).

Claude Code elenca la voce personalizzata dopo le voci incorporate, e qualsiasi riga modelPicker che aggiungete viene dopo di essa.

Claude Code salta la convalida per l'ID del modello impostato in ANTHROPIC_CUSTOM_MODEL_OPTION, quindi è possibile utilizzare qualsiasi stringa che l'endpoint API accetta.

Quando availableModels è impostato, includere l'ID del modello personalizzato anche nell'elenco di autorizzazione. Altrimenti Claude Code filtra la voce personalizzata dal selettore e rifiuta una selezione --model di essa come qualsiasi altro modello escluso.

Un ID personalizzato che incorpora un nome di famiglia, come my-gateway/claude-opus-5, conta come una voce specifica per quella famiglia e disabilita il suo wildcard, quindi elencare anche le versioni che intendete mantenere selezionabili. Vedere Comportamento di unione.

Variabili di ambiente

Utilizzare le seguenti variabili di ambiente per controllare i nomi dei modelli a cui gli alias si mappano. Ogni valore deve essere un nome di modello completo, o l'identificatore equivalente per il provider API. Per scegliere il modello su cui iniziano le sessioni, impostare ANTHROPIC_DEFAULT_MODEL, che questa tabella omette.

Variabile di ambiente Descrizione
ANTHROPIC_DEFAULT_FABLE_MODEL Il modello da utilizzare per fable, e l'ID del modello che Claude Code riconosce come modello Fable per il fallback automatico del modello su provider di terze parti
ANTHROPIC_DEFAULT_OPUS_MODEL Il modello da utilizzare per opus, o per opusplan quando Plan Mode è attivo.
ANTHROPIC_DEFAULT_SONNET_MODEL Il modello da utilizzare per sonnet, o per opusplan quando Plan Mode non è attivo.
ANTHROPIC_DEFAULT_HAIKU_MODEL Il modello da utilizzare per haiku, o funzionalità in background
CLAUDE_CODE_SUBAGENT_MODEL Il modello predefinito per subagents, team di agenti compagni di squadra, e agenti workflow che non sono assegnati a un modello in un altro modo. Accetta un alias come haiku o un nome di modello completo. Un modello per invocazione o il campo model di una definizione, incluso inherit, ha la precedenza. Per modificare questo, impostare CLAUDE_CODE_SUBAGENT_MODEL_FORCE

Nota: ANTHROPIC_SMALL_FAST_MODEL è deprecato a favore di ANTHROPIC_DEFAULT_HAIKU_MODEL.

Fissare i modelli per distribuzioni di terze parti

Quando si distribuisce Claude Code tramite Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry, o Claude Platform on AWS, fissare le versioni dei modelli prima di distribuire agli utenti.

Senza fissaggio, Claude Code utilizza alias di modelli come fable, opus, sonnet e haiku che si risolvono in un ID di modello predefinito incorporato per ogni provider. Tale impostazione predefinita può rimanere indietro rispetto alla versione più recente di Anthropic, e il modello a cui punta potrebbe non essere ancora abilitato nell'account di un utente. Quando l'impostazione predefinita non è disponibile, gli utenti Amazon Bedrock e Google Cloud's Agent Platform vedono un avviso e la sessione ricade nella versione precedente del modello predefinito, o nel modello Sonnet predefinito quando l'impostazione predefinita è un modello Opus e nessuna versione di Opus è disponibile. Gli utenti Microsoft Foundry vedono errori invece, perché Microsoft Foundry non ha alcun controllo di avvio equivalente.

Su Amazon Bedrock e Google Cloud's Agent Platform, un utente che avvia la sessione su una versione specifica di Sonnet oppure Opus, ad esempio con --model, ANTHROPIC_MODEL, o l'impostazione model, fissa quella versione come impostazione predefinita della sessione per l'alias corrispondente: il controllo di avvio salta l'impostazione predefinita incorporata che sostituisce e non mostra alcun avviso di fallback. Prima della v2.1.211, il controllo veniva eseguito e poteva mostrare un avviso anche quando un modello di sessione era configurato esplicitamente.

Utilizzare le seguenti variabili di ambiente con ID di modello specifici della versione per il provider:

Provider Esempio
Amazon Bedrock export ANTHROPIC_DEFAULT_OPUS_MODEL='us.anthropic.claude-opus-4-8'
Google Cloud's Agent Platform export ANTHROPIC_DEFAULT_OPUS_MODEL='claude-opus-4-8'
Microsoft Foundry export ANTHROPIC_DEFAULT_OPUS_MODEL='claude-opus-4-8'

Applicare lo stesso modello per ANTHROPIC_DEFAULT_FABLE_MODEL, ANTHROPIC_DEFAULT_SONNET_MODEL e ANTHROPIC_DEFAULT_HAIKU_MODEL. Per gli ID di modello attuali e legacy su tutti i provider, vedere Panoramica dei modelli. Per aggiornare gli utenti a una nuova versione del modello, aggiornare queste variabili di ambiente e ridistribuire.

Per abilitare il contesto esteso per un modello fissato, aggiungere [1m] all'ID del modello in ANTHROPIC_DEFAULT_OPUS_MODEL, ANTHROPIC_DEFAULT_SONNET_MODEL, o ANTHROPIC_DEFAULT_FABLE_MODEL:

export ANTHROPIC_DEFAULT_OPUS_MODEL='claude-opus-4-8[1m]'

Con il suffisso [1m], la finestra di contesto 1M si applica a tutto l'utilizzo dell'alias fissato, inclusa la fase Opus in modalità piano di opusplan e subagents il cui frontmatter model nomina l'alias.

  • Claude Code rimuove il suffisso prima di inviare l'ID del modello al provider.
  • Aggiungere [1m] solo quando il modello sottostante supporta il contesto 1M.
  • Il suffisso viene letto per variabile, non per modello. Su Amazon Bedrock, Google Cloud's Agent Platform e Microsoft Foundry, un ID di modello senza [1m] in una variabile utilizza il contesto 200K anche se un'altra variabile imposta lo stesso modello con il suffisso. Sonnet 5 viene sempre eseguito con la finestra 1M su questi provider e non ha mai bisogno del suffisso.

Personalizzare la visualizzazione e le capacità del modello fissato

Quando si fissa un modello su un provider di terze parti, la sua riga nel selettore /model mostra il nome del modello per impostazione predefinita se Claude Code riconosce l'ID fissato, e l'ID grezzo altrimenti:

  • Riconosciuto: l'ID esatto di un modello che Claude Code conosce, come il suo ID API Anthropic o la forma del provider o del gateway, con o senza il suffisso [1m]. Fissare us.anthropic.claude-sonnet-4-5-20250929-v1:0 e la riga legge Sonnet 4.5.
  • Non riconosciuto: qualsiasi altro ID, come un ARN di profilo di inferenza dell'applicazione o una versione del modello che Claude Code non conosce, a meno che una voce modelOverrides non mappi un modello a quella stringa esatta. Su Microsoft Foundry, i nomi di distribuzione sono definiti dall'utente, quindi Claude Code non riconosce mai un ID fissato lì, mappato o meno, e la riga mostra il nome di distribuzione per impostazione predefinita.

Quando una riga mostra il nome del modello, la sua descrizione predefinita include l'ID fissato in modo da poter comunque vedere quale ID è fissato.

Claude Code potrebbe anche non riconoscere quali funzionalità supporta un modello fissato. È possibile impostare il nome di visualizzazione e la descrizione da soli e dichiarare le capacità con variabili di ambiente complementari per ogni modello fissato.

Queste variabili hanno effetto su provider di terze parti come Amazon Bedrock, Google Cloud's Agent Platform e Microsoft Foundry. Le variabili _NAME e _DESCRIPTION hanno effetto anche quando ANTHROPIC_BASE_URL punta a un gateway LLM. Non hanno effetto quando si effettua la connessione direttamente a api.anthropic.com.

Variabile di ambiente Descrizione
ANTHROPIC_DEFAULT_OPUS_MODEL_NAME Nome di visualizzazione per il modello Opus fissato nel selettore /model. Quando non impostato, la riga mostra il nome del modello se Claude Code riconosce l'ID fissato, e l'ID fissato altrimenti
ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION Descrizione di visualizzazione per il modello Opus fissato nel selettore /model. Quando non impostato, la riga mostra una descrizione predefinita che inizia con Custom Opus model
ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES Elenco separato da virgole delle capacità che il modello Opus fissato supporta

Gli stessi suffissi _NAME, _DESCRIPTION e _SUPPORTED_CAPABILITIES sono disponibili per ANTHROPIC_DEFAULT_SONNET_MODEL, ANTHROPIC_DEFAULT_HAIKU_MODEL, ANTHROPIC_DEFAULT_FABLE_MODEL e ANTHROPIC_CUSTOM_MODEL_OPTION.

Claude Code abilita funzionalità come livelli di sforzo e extended thinking abbinando l'ID del modello rispetto a modelli noti. Gli ID specifici del provider come ARN Amazon Bedrock o nomi di distribuzione personalizzati spesso non corrispondono a questi modelli, lasciando le funzionalità supportate disabilitate. Impostare _SUPPORTED_CAPABILITIES per dire a Claude Code quali funzionalità il modello effettivamente supporta:

Valore di capacità Abilita
effort Livelli di sforzo e il comando /effort
xhigh_effort Il livello di sforzo xhigh
max_effort Il livello di sforzo max
thinking Extended thinking
adaptive_thinking Ragionamento adattivo che alloca dinamicamente il pensiero in base alla complessità dell'attività
interleaved_thinking Pensiero tra le chiamate di strumento

Quando _SUPPORTED_CAPABILITIES è impostato, Claude Code abilita le capacità elencate e disabilita quelle non elencate per il modello fissato corrispondente. Quando la variabile non è impostata, Claude Code ricade sulla rilevazione incorporata basata sull'ID del modello.

Questo esempio fissa Opus a un ARN di modello personalizzato Amazon Bedrock, imposta un nome amichevole e dichiara le sue capacità:

export ANTHROPIC_DEFAULT_OPUS_MODEL='arn:aws:bedrock:us-east-1:123456789012:custom-model/abc'
export ANTHROPIC_DEFAULT_OPUS_MODEL_NAME='Opus via Bedrock'
export ANTHROPIC_DEFAULT_OPUS_MODEL_DESCRIPTION='Opus 4.7 routed through a Bedrock custom endpoint'
export ANTHROPIC_DEFAULT_OPUS_MODEL_SUPPORTED_CAPABILITIES='effort,xhigh_effort,max_effort,thinking,adaptive_thinking,interleaved_thinking'

Eseguire l'override degli ID di modello per versione

Su piattaforme che incorporano Claude Code e impostano CLAUDE_CODE_PROVIDER_MANAGED_BY_HOST, la configurazione del modello dell'host ha la precedenza sulle impostazioni del modello gestite, mentre un elenco di autorizzazione availableModels gestito rimane in vigore a meno che l'host non fornisca il proprio; Eccezioni alla precedenza delle impostazioni gestite dice quali chiavi e variabili l'host sostituisce.

Le variabili di ambiente a livello di famiglia sopra configurano un ID di modello per alias di famiglia. Se è necessario mappare diverse versioni all'interno della stessa famiglia a ID di provider distinti, utilizzare invece l'impostazione modelOverrides.

modelOverrides mappa i singoli ID di modello Anthropic alle stringhe specifiche del provider che Claude Code invia all'API del provider. Quando un utente seleziona un modello mappato nel selettore /model, Claude Code utilizza il valore configurato invece del valore predefinito incorporato.

Questo consente agli amministratori aziendali di instradare ogni versione del modello a un ARN di profilo di inferenza Amazon Bedrock specifico, a un nome di versione Google Cloud's Agent Platform o a un nome di distribuzione Microsoft Foundry per governance, allocazione dei costi o instradamento regionale.

Impostare modelOverrides nel file delle impostazioni:

{
  "modelOverrides": {
    "claude-opus-4-7": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-prod",
    "claude-opus-4-6": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/opus-46-prod",
    "claude-sonnet-4-6": "arn:aws:bedrock:us-east-2:123456789012:application-inference-profile/sonnet-prod"
  }
}

Le chiavi devono essere ID di modello Anthropic come elencati nella Panoramica dei modelli. Per gli ID di modello datati, includere il suffisso della data esattamente come appare lì. Le chiavi sconosciute vengono ignorate.

Per interrompere la riga diagnostica [claude-code:unrecognized_model] per un ID come un alias di gateway, aggiungere una voce con quell'ID come suo valore.

Gli override sostituiscono gli ID di modello incorporati che supportano ogni voce nel selettore /model. Su Amazon Bedrock, le voci modelOverrides hanno la precedenza su qualsiasi profilo di inferenza che Claude Code scopre automaticamente all'avvio. Claude Code passa i valori che sono già nativi del provider, come ARN di profilo di inferenza Amazon Bedrock o nomi di distribuzione Microsoft Foundry, al provider così come sono.

Gli override si applicano anche quando si passa un ID di modello Anthropic direttamente tramite --model, la variabile di ambiente ANTHROPIC_MODEL, o una variabile di ambiente ANTHROPIC_DEFAULT_*_MODEL. Su Amazon Bedrock, Google Cloud's Agent Platform e Mantle, un ID di modello Anthropic senza voce modelOverrides si risolve nello stesso ID specifico del provider della riga del selettore /model per quella versione, quando il provider supporta quella versione. Mantle supporta un sottoinsieme di versioni. Per un ID di modello Anthropic al di fuori di quel sottoinsieme, Claude Code invia l'ID grezzo a Mantle senza mapparlo, a meno che una voce modelOverrides lo copra. Prima della v2.1.200, --model e i valori delle variabili di ambiente raggiungevano il provider così come erano senza passare attraverso la mappa di override.

modelOverrides funziona insieme a availableModels. L'elenco di autorizzazione viene valutato rispetto all'ID di modello Anthropic, non al valore di override, quindi una voce come "opus" in availableModels continua a corrispondere anche quando le versioni di Opus sono mappate a ARN. Quando enforceAvailableModels è impostato nelle impostazioni gestite, il Default applicato si risolve tramite modelOverrides dalle impostazioni gestite solo. Il mapping di un amministratore, come una versione fissata a un ARN di profilo di inferenza, viene rispettato nel Default applicato. Gli override dalle impostazioni utente o progetto non lo influenzano.

Quando availableModels è impostato nelle impostazioni gestite, solo modelOverrides dalle impostazioni gestite si applicano a un ID di modello Anthropic passato direttamente tramite --model o le variabili di ambiente sopra. Claude Code ignora gli override nelle impostazioni utente o progetto per quegli ID, e non risolve mai un ID che l'elenco gestito esclude tramite modelOverrides da alcuna fonte di impostazioni. Questa restrizione di fonte gestita richiede Claude Code v2.1.200 o successivo. Vedere Limitare la selezione del modello per come vengono gestiti gli ID bloccati.

Configurazione della prompt caching

Claude Code utilizza automaticamente la prompt caching per ottimizzare le prestazioni e ridurre i costi. È possibile disabilitare la prompt caching globalmente o per livelli di modello specifici:

Variabile di ambiente Descrizione
DISABLE_PROMPT_CACHING Impostare su 1 per disabilitare la prompt caching per tutti i modelli. Ha la precedenza sulle impostazioni per modello
DISABLE_PROMPT_CACHING_HAIKU Impostare su 1 per disabilitare la prompt caching solo per i modelli Haiku
DISABLE_PROMPT_CACHING_SONNET Impostare su 1 per disabilitare la prompt caching solo per i modelli Sonnet
DISABLE_PROMPT_CACHING_OPUS Impostare su 1 per disabilitare la prompt caching solo per i modelli Opus
DISABLE_PROMPT_CACHING_FABLE Impostare su 1 per disabilitare la prompt caching solo per i modelli Fable

Per scegliere il TTL della cache per la conversazione principale e per i subagents separatamente, vedere scegliere il TTL da soli. Per cosa attiva un cache miss, vedere Come Claude Code utilizza la prompt caching.