claude-cli:// che apre Claude Code in una nuova finestra del terminale. L’URL può contenere una directory di lavoro e un prompt da precompilare.
Il prompt viene inserito ma non inviato finché non premi Enter. Per fare in modo che i link si aprano su una macchina, invia prima un prompt in una sessione interattiva di Claude Code su quella macchina, così che Claude Code registri il suo gestore claude-cli://.
Poiché un deep link è un URL, puoi inserirlo ovunque possa andare un link:
- Un passaggio di un runbook per gli incidenti che apre il repository del servizio interessato con un prompt diagnostico
- Un avviso di monitoraggio o una dashboard che rimanda a un prompt di indagine per una metrica specifica
- Un README o una pagina wiki che apre il progetto con un prompt di onboarding
- Una notifica di errore della CI che precompila il nome del job non riuscito
Come funzionano i deep link
Il prefissoclaude-cli:// è uno schema URL personalizzato che Claude Code registra presso il tuo sistema operativo, in modo simile a come i link mailto: aprono il tuo client di posta elettronica. Quando fai clic su un deep link:
- Il browser o l’app passa l’URL al tuo sistema operativo.
- Il sistema operativo riconosce il prefisso
claude-cli://e avvia Claude Code sul tuo computer. - Si apre una nuova finestra del terminale con Claude Code in esecuzione nella directory specificata dal link e con il testo del prompt del link già presente nella casella di input.
- Leggi il prompt, lo modifichi se vuoi e premi Enter per inviarlo.
Cosa mostra una sessione avviata
Un deep link non esegue mai nulla da solo. Il link si limita a scegliere una directory e a compilare la casella del prompt. Se fai clic su un link da una pagina di cui non ti fidi, il prompt resta comunque inerte: nulla raggiunge il modello finché non leggi ciò che è stato inserito e premi Enter. Quando la sessione si apre, sotto la casella di input compare una riga di avviso con il testoPrompt from an external link, che rimane visibile finché non invii o cancelli il prompt. Per i prompt di oltre 1.000 caratteri, l’avviso include il numero di caratteri e ti invita a scorrere e rivedere il testo completo prima di premere Enter, poiché i prompt lunghi possono spingere le istruzioni fuori dallo schermo. Le regole di permesso, CLAUDE.md e le richieste di attendibilità per la directory selezionata si applicano allo stesso modo di qualsiasi altra sessione.
Creare un link
Un deep link inizia conclaude-cli://open, seguito da parametri di query facoltativi. La forma minima apre Claude Code nella tua directory home con un prompt vuoto:
cwd e repo sono due modi per impostare la directory di lavoro. Se li passi entrambi, cwd ha la precedenza e repo viene ignorato, anche se il percorso cwd non esiste.
Il link seguente punta a un repository chiamato acme/payments con un prompt diagnostico di due righe. Sostituisci acme/payments con lo slug owner/name del tuo repository quando crei il tuo link:
acme/payments e la casella del prompt viene compilata con il testo decodificato:
cwd e repo per sapere come viene selezionato il percorso locale quando hai più clone o worktree.
Scegliere tra cwd e repo
Usa cwd quando tutti coloro che fanno clic sul link hanno il progetto nello stesso percorso assoluto, ad esempio in un devcontainer o in un’immagine VM standardizzati.
Usa repo quando il link è condiviso e ogni persona clona il repository in una posizione diversa. Claude Code risolve lo slug in un percorso locale nel modo seguente:
repoapre il clone o il worktree del repository collegato in cui hai eseguitoclaudepiù di recente. Ogni volta che eseguiclaudein un repository Git, Claude Code registra il percorso di quella directory associandolo allo slug GitHubowner/namedel repository. Claude Code tiene traccia separatamente di clone e worktree.- Il link non cambia il branch su cui è effettuato il checkout. La sessione si apre nello stato in cui si trova attualmente quella directory.
Esempi
Le sezioni seguenti mostrano due modi comuni di utilizzare un deep link: come link Markdown in un documento e come comando in uno script di shell o alias.Incorporare un link in un runbook
Un deep link in un runbook offre a chiunque stia triaging un modo con un solo clic per iniziare a indagare nel repository corretto con un prompt preparato. La piattaforma che renderizza il runbook deve consentire schemi URL personalizzati. Il Markdown renderizzato da GitHub non consenteclaude-cli://, quindi un deep link in un README, problema o wiki di GitHub mostra solo la sua etichetta senza link cliccabile. Vedi la nota sulla risoluzione dei problemi per una soluzione alternativa.
Il prompt fa parte dell’URL e deve essere codificato in URL. Per produrre il valore codificato, passa il testo del tuo prompt attraverso encodeURIComponent in una console del browser o in qualsiasi codificatore URL.
L’esempio seguente aggiunge un punto di ingresso di indagine a un runbook di incidente per un servizio chiamato web-gateway:
acme/web-gateway con lo slug del repository del tuo servizio. Prima che gli ingegneri facciano clic sul passaggio 2, devono aver inviato un prompt in una sessione interattiva di Claude Code sulla propria macchina e aperto Claude Code nel proprio clone locale.
Aprire un link dalla shell
Puoi anche aprire un deep link da uno script di shell, alias o automazione piuttosto che facendo clic su di esso. Chiama il comando di apertura URL del tuo sistema operativo con il link come argomento. Questi comandi si basano sul gestore che Claude Code registra sulla macchina.- macOS
- Linux
- Windows
Il comando Se tutto va bene, si apre una nuova finestra di terminale con Claude Code in esecuzione e il prompt pre-compilato.
open integrato passa l’URL al gestore claude-cli:// registrato:Registrazione e piattaforme supportate
Claude Code registra il gestoreclaude-cli:// con il tuo sistema operativo su macOS, Linux e Windows quando fai una di queste cose:
- Invii qualsiasi cosa a una sessione interattiva di
claude, come un messaggio o/help. Avviarne una senza inviare nulla non registra il gestore. - Avvii Claude Code nella vista agenti, ad esempio con
claude agents, in una cartella che hai contrassegnato come attendibile
Il gestore avvia Claude Code in un emulatore di terminale rilevato. Su macOS, Claude Code ricorda il terminale dalla tua sessione interattiva più recente e lo riutilizza, supportando iTerm2, Ghostty, kitty, Alacritty, WezTerm e Terminal.app. Su Linux onora la variabile di ambiente
$TERMINAL, quindi x-terminal-emulator, quindi un elenco di emulatori comuni. Su Windows preferisce Windows Terminal, quindi PowerShell, quindi cmd.exe.
Per impedire completamente la registrazione, imposta disableDeepLinkRegistration su "disable" in settings.json. Per applicare questo in tutta un’organizzazione in modo che gli utenti non possano riabilitarlo, impostalo invece in impostazioni gestite. L’impostazione disableDeepLinkRegistration di Claude Code riguarda solo i link claude-cli://.
Aprire una scheda VS Code invece di un terminale
L’estensione VS Code registra il suo gestore avscode://anthropic.claude-code/open, che apre una scheda dell’editor Claude Code piuttosto che una finestra di terminale. Vedi Avviare una scheda VS Code da altri strumenti per i parametri di quell’URL.
Aprire una sessione di Claude Desktop su una connessione SSH
Claude Desktop gestisce autonomamente i propri linkclaude://. Per aprire una sessione Desktop su una macchina remota tramite SSH, consulta Aprire una sessione SSH da un link.
Risoluzione dei problemi
Fare clic sul link non fa nulla
Il gestore probabilmente non è ancora registrato. In una sessione interattiva, la registrazione avviene quando invii qualcosa, non quando la sessione inizia. Avvia una sessioneclaude interattiva su quella macchina, invia un prompt qualsiasi, esci e riprova il link. Se sei su Linux senza un ambiente desktop, xdg-open potrebbe non avere nulla a cui inviare.
xdg-open non è trovato su Linux
Il comandoxdg-open fa parte del pacchetto xdg-utils, che le immagini server minime, i container e le distribuzioni WSL spesso omettono. Installa xdg-utils con il gestore pacchetti della tua distribuzione, ad esempio sudo apt install xdg-utils, quindi esegui di nuovo il comando. Se il comando viene eseguito ma non si apre nulla, xdg-open potrebbe non avere un ambiente desktop a cui inviare; vedi Fare clic sul link non fa nulla.
Il link viene renderizzato come testo semplice invece di essere cliccabile
Alcuni renderer Markdown consentono solo linkhttp e https e rimuovono altri schemi URL. GitHub lo fa nei README, nelle issue, nelle pull request e nei wiki: [label](claude-cli://...) viene renderizzato come label, senza link e con l’URL rimosso. Su queste piattaforme, metti il deep link in un blocco di codice in modo che i lettori possano vedere l’URL e incollarlo nella barra degli indirizzi del loro browser.
La sessione si apre nella mia home directory invece che nel repository
Il parametrorepo risolve solo i clone che Claude Code ha già visto. Esegui claude all’interno del clone una volta in modo che Claude Code registri il suo percorso, o cambia il link per utilizzare cwd con un percorso assoluto.
Il link apre il terminale sbagliato
Su macOS, avviaclaude nel tuo terminale preferito una volta e il prossimo deep link lo userà. Su Linux, imposta la variabile di ambiente $TERMINAL sul nome del comando dell’emulatore preferito. Su Windows, l’ordine è fisso: installa Windows Terminal se vuoi che i link si aprano lì invece di una finestra PowerShell o cmd.exe.
Ulteriori informazioni
Queste pagine coprono modi correlati per avviare o estendere le sessioni di Claude Code:- Skills: archivia un lungo prompt di runbook come
/skillnel repository in modo che il parametroqdel deep link debba solo nominarlo - Non-interactive mode: esegui Claude da uno script e cattura l’output senza aprire un terminale