Orchestrare subagenti su larga scala con flussi di lavoro dinamici
I flussi di lavoro dinamici orchestrano molti subagenti da uno script che Claude scrive e che puoi rieseguire. Usali per audit di codebase, migrazioni su larga scala e ricerche con verifica incrociata.
{/* plan-availability: feature=workflows plans=pro,max,team,enterprise providers=all */}
I flussi di lavoro dinamici sono in anteprima di ricerca. Richiedono Claude Code v2.1.154 o successivo e sono disponibili su tutti i piani a pagamento, con accesso all'API Anthropic, e su Amazon Bedrock, Google Cloud Vertex AI e Microsoft Foundry. Su Pro, attivali dalla riga Dynamic workflows in /config.
Un flusso di lavoro dinamico è uno script JavaScript che orchestra subagenti su larga scala. Claude scrive lo script per il compito che descrivi, e un runtime lo esegue in background mentre la tua sessione rimane reattiva.
Ricorri a un flusso di lavoro quando un compito richiede più agenti di quanti una conversazione possa coordinare, o quando vuoi che l'orchestrazione sia codificata come uno script che puoi leggere e rieseguire. Gli esempi includono una ricerca di bug a livello di codebase, una migrazione di 500 file, una domanda di ricerca che richiede fonti verificate l'una rispetto all'altra, e un piano difficile che vale la pena di elaborare da diversi angoli indipendenti prima di impegnarsi in uno.
Questa pagina copre come:
- Decidere quando usare un flusso di lavoro invece di subagenti o skills
- Eseguire un flusso di lavoro in bundle con
/deep-research - Far scrivere a Claude un flusso di lavoro per il tuo compito e salvarlo
- Comprendere come viene eseguito un flusso di lavoro e gestire le esecuzioni
Quando usare un flusso di lavoro
Subagenti, skills, team di agenti e flussi di lavoro possono tutti eseguire un compito multi-step. La differenza è chi tiene il piano:
| Subagenti | Skills | Team di agenti | Flussi di lavoro | |
|---|---|---|---|---|
| Che cosa è | Un worker Claude che genera | Istruzioni che Claude segue | Un agente lead che supervisiona sessioni peer | Uno script che il runtime esegue |
| Chi decide cosa viene eseguito dopo | Claude, turno per turno | Claude, seguendo il prompt | L'agente lead, turno per turno | Lo script |
| Dove vivono i risultati intermedi | Finestra di contesto di Claude | Finestra di contesto di Claude | Un elenco di compiti condiviso | Variabili dello script |
| Che cosa è ripetibile | La definizione del worker | Le istruzioni | La definizione del team | L'orchestrazione stessa |
| Scala | Alcuni compiti delegati per turno | Uguale ai subagenti | Una manciata di peer a lunga esecuzione | Decine a centinaia di agenti per esecuzione |
| Interruzione | Riavvia il turno | Riavvia il turno | I compagni di team continuano a funzionare | Riprendibile nella stessa sessione |
Un flusso di lavoro sposta il piano nel codice. Con subagenti, skills e team di agenti, Claude è l'orchestratore: decide turno per turno cosa generare o assegnare dopo, e ogni risultato finisce nella finestra di contesto. Uno script di flusso di lavoro tiene il ciclo, la ramificazione e i risultati intermedi stessi, quindi il contesto di Claude contiene solo la risposta finale.
Spostare il piano nel codice consente anche a un flusso di lavoro di applicare un modello di qualità ripetibile, non solo eseguire più agenti: può avere agenti indipendenti che si rivedono avversarialmente i risultati l'uno dell'altro prima che vengano segnalati, o elaborare un piano da diversi angoli e pesarli l'uno rispetto all'altro, così ottieni un risultato più affidabile di un singolo passaggio.
Eseguire un flusso di lavoro in bundle
Il modo più veloce per vedere un flusso di lavoro in azione è eseguire /deep-research, il flusso di lavoro integrato che Claude Code include per investigare una domanda su molte fonti. Vedrai gli agenti lavorare attraverso una serie di fasi in background mentre la tua sessione rimane libera, e otterrai un rapporto alla fine invece di una trascrizione turno per turno.
Eseguire il flusso di lavoro
Esegui /deep-research con una domanda che vuoi investigare. Distribuisce ricerche web su diversi angoli, recupera e verifica in modo incrociato le fonti che trova, e sintetizza un rapporto citato.
/deep-research What changed in the Node.js permission model between v20 and v22?
Consentire i flussi di lavoro
Claude Code chiede se consentire il flusso di lavoro. Seleziona Sì per continuare. Il prompt esatto dipende dalla tua modalità di autorizzazione. Vedi Approvare il piano prima che venga eseguito per le opzioni per modalità.
Guardare il progresso
L'esecuzione inizia in background. Esegui /workflows, usa i tasti freccia per selezionare l'esecuzione e premi Invio per aprire la sua vista di progresso:
/workflows
La vista mostra ogni fase con il suo conteggio di agenti, totale di token e tempo trascorso. Approfondisci qualsiasi fase per vedere i suoi agenti e cosa ha trovato ognuno. Vedi Guardare l'esecuzione per l'insieme completo di controlli.
Puoi anche guardare dal pannello attività sotto la casella di input: un riepilogo di progresso su una riga appare lì mentre l'esecuzione è in corso. Premi la freccia giù per focalizzarlo, quindi Invio per espandere.
Leggere il rapporto
Quando l'esecuzione finisce, il rapporto arriva nella tua sessione. Cita le fonti da cui proviene ogni affermazione, con affermazioni che non hanno superato la verifica incrociata già filtrate.
Per eseguire un flusso di lavoro per il tuo compito, fai scrivere uno a Claude, e una volta che un'esecuzione fa quello che volevi puoi salvarlo come comando tuo.
Flussi di lavoro in bundle
Claude Code include /deep-research come flusso di lavoro integrato:
| Comando | Che cosa fa |
|---|---|
/deep-research <question> |
Distribuisce ricerche web su una domanda su diversi angoli, recupera e verifica in modo incrociato le fonti che trova, vota su ogni affermazione e restituisce un rapporto citato con affermazioni che non hanno superato la verifica incrociata filtrate. Richiede che lo strumento WebSearch sia disponibile |
I flussi di lavoro che salvi tu stesso diventano comandi allo stesso modo e appaiono nell'autocompletamento / insieme a quelli in bundle.
Guardare l'esecuzione
I flussi di lavoro vengono eseguiti in background, quindi la sessione rimane reattiva mentre gli agenti lavorano. Esegui /workflows in qualsiasi momento per elencare i flussi di lavoro in esecuzione e completati, quindi selezionane uno per aprire la sua vista di progresso.
/workflows
La vista di progresso mostra ogni fase con i suoi conteggi di agenti, totali di token e tempo trascorso. Il piè di pagina elenca il tasto per ogni azione:
| Tasto | Azione |
|---|---|
↑ / ↓ |
Selezionare una fase o un agente |
Invio o → |
Approfondire la fase selezionata, quindi in un agente per leggere il suo prompt, le recenti chiamate di strumenti e il risultato |
Esc |
Tornare indietro di un livello |
j / k |
Scorrere all'interno del dettaglio dell'agente quando trabocca |
p |
Mettere in pausa o riprendere l'esecuzione |
x |
Fermare l'agente selezionato, o fermare l'intero flusso di lavoro quando il focus è sull'esecuzione |
r |
Riavviare l'agente in esecuzione selezionato |
s |
Salvare lo script dell'esecuzione come comando |
Far scrivere a Claude un flusso di lavoro
Puoi far scrivere a Claude un flusso di lavoro per il tuo compito in due modi:
- Chiedere un flusso di lavoro nel tuo prompt, con le tue stesse parole o includendo la parola chiave
ultracode, e Claude ne scrive uno per il compito. - Lasciare che Claude decida con ultracode: imposta
/effort ultracodee Claude pianifica un flusso di lavoro per ogni compito sostanziale nella sessione.
Puoi anche eseguire un comando di flusso di lavoro che già esiste: un flusso di lavoro in bundle come /deep-research, o uno che hai salvato.
Chiedere un flusso di lavoro nel tuo prompt
Per eseguire un singolo compito come flusso di lavoro senza cambiare il livello di sforzo della sessione, includi la parola chiave ultracode nel tuo prompt. Chiedere con le tue stesse parole, ad esempio "usa un flusso di lavoro" o "esegui un flusso di lavoro", funziona anche: Claude tratta una richiesta diretta come lo stesso opt-in. Prima della v2.1.160 la parola chiave letterale era workflow; le richieste in linguaggio naturale funzionano in entrambe le versioni.
ultracode: audit every API endpoint under src/routes/ for missing auth checks
Claude Code evidenzia la parola chiave nel tuo input e Claude scrive uno script di flusso di lavoro per il compito invece di lavorarci turno per turno. Se non intendevi avviare un flusso di lavoro, premi Option+W su macOS o Alt+W su Windows e Linux per ignorare l'evidenziazione per questo prompt, oppure premi backspace mentre il cursore è subito dopo la parola chiave evidenziata. Per impedire che la parola chiave attivi un flusso di lavoro del tutto, disattiva il trigger della parola chiave Ultracode in /config.
Se l'esecuzione fa quello che volevi, puoi salvarlo come comando dopo.
Se hai già un orchestrator costruito in un altro modo, come una cartella di prompt di subagent o una skill che distribuisce il lavoro, puoi indicare a Claude dove si trova e chiedere un flusso di lavoro che faccia la stessa cosa.
Lasciare che Claude decida con ultracode
Ultracode è un'impostazione di Claude Code che combina xhigh sforzo di ragionamento con orchestrazione automatica del flusso di lavoro. Con essa attiva, Claude pianifica un flusso di lavoro per ogni compito sostanziale invece di aspettare che tu lo chieda.
/effort ultracode
Con ultracode attivo, Claude decide quando un compito merita un flusso di lavoro. Una singola richiesta può trasformarsi in diversi flussi di lavoro di fila: uno per comprendere il codice, uno per fare il cambiamento e uno per verificarlo. Questo si applica a ogni compito nella sessione, quindi ogni richiesta usa più token e richiede più tempo rispetto ai livelli di sforzo inferiori.
Ultracode dura per la sessione corrente e si ripristina quando inizi una nuova. Torna indietro con /effort high quando ritorni al lavoro di routine. È disponibile su modelli che supportano xhigh sforzo; su altri modelli il menu /effort non lo offre.
Approvare il piano prima che venga eseguito
Nel CLI, il prompt per esecuzione mostra le fasi pianificate e queste opzioni:
- Sì, eseguilo: avvia l'esecuzione
- Sì, e non chiedere di nuovo per
<name>in<path>: avvia e salta questo prompt per questo flusso di lavoro in questo progetto da ora in poi - Visualizza script grezzo: leggi lo script prima di decidere
- No: annulla
Ctrl+G apre lo script nel tuo editor. Tab ti consente di regolare il prompt prima che l'esecuzione inizi.
Se vedi questo prompt dipende dalla tua modalità di autorizzazione:
| Modalità di autorizzazione | Quando sei richiesto |
|---|---|
| Predefinito, accetta modifiche | Ogni esecuzione, a meno che tu non abbia selezionato Sì, e non chiedere di nuovo per quel flusso di lavoro in questo progetto |
| Auto | Solo al primo avvio. Qualsiasi Sì registra il consenso nelle tue impostazioni utente, e i successivi avvii iniziano senza richiedere. Saltato completamente quando ultracode è attivo |
Bypass permissions, claude -p, Agent SDK |
Mai. L'esecuzione inizia immediatamente |
Nell'app Desktop, una scheda di approvazione mostra il nome del flusso di lavoro, l'elenco delle fasi e un avvertimento di utilizzo dei token, con azioni Una volta, Sempre e Nega. La vista di progresso appare nel riquadro laterale Attività in background.
La tua modalità di autorizzazione controlla solo il prompt di avvio sopra. I subagenti che il flusso di lavoro genera vengono sempre eseguiti in modalità acceptEdits e ereditano la tua lista di autorizzazione degli strumenti, indipendentemente dalla modalità della tua sessione. Le modifiche ai file vengono approvate automaticamente.
I comandi shell, i recuperi web e gli strumenti MCP che non sono nella tua lista di autorizzazione possono comunque richiederti durante l'esecuzione. Per evitare questo su un'esecuzione lunga, aggiungi i comandi di cui gli agenti hanno bisogno alla tua lista di autorizzazione prima di iniziare.
In claude -p e nell'Agent SDK non c'è nessuno a cui richiedere, quindi le chiamate di strumenti seguono le tue regole di autorizzazione configurate senza conferma interattiva.
Salvare il flusso di lavoro per il riutilizzo
Quando Claude scrive un flusso di lavoro per un compito che ripeterai, puoi salvare lo script di quell'esecuzione come comando. Un processo come una revisione che esegui su ogni ramo quindi esegue la stessa orchestrazione ogni volta.
Esegui /workflows, seleziona l'esecuzione che vuoi mantenere e premi s. Nella finestra di dialogo di salvataggio, Tab attiva/disattiva tra i due percorsi di salvataggio:
.claude/workflows/nel tuo progetto: condiviso con chiunque cloni il repo~/.claude/workflows/nella tua home directory: disponibile in ogni progetto, visibile solo a te
Premi Invio per salvare. Il flusso di lavoro viene eseguito come /<name> nelle future sessioni da entrambi i percorsi.
Se un flusso di lavoro di progetto e un flusso di lavoro personale condividono un nome, viene eseguito quello di progetto.
Passare input a un flusso di lavoro salvato
Un flusso di lavoro salvato può accettare input attraverso il parametro args. Lo script lo legge come una variabile globale denominata args. Usa questo per fornire una domanda di ricerca, un elenco di percorsi target o un oggetto di configurazione al momento dell'invocazione invece di modificare lo script per ogni esecuzione.
Il seguente prompt esegue un flusso di lavoro salvato con un elenco di numeri di issue:
> Run /triage-issues on issues 1024, 1025, and 1030
Claude passa l'elenco come dati strutturati, quindi lo script può chiamare metodi di array e oggetto su args direttamente senza analizzarlo prima. Se args viene omesso, la variabile globale è undefined all'interno dello script.
Come viene eseguito un flusso di lavoro
Il runtime del flusso di lavoro esegue lo script in un ambiente isolato, separato dalla tua conversazione. I risultati intermedi rimangono nelle variabili dello script invece di finire nel contesto di Claude.
Ogni esecuzione scrive il suo script in un file nella directory della tua sessione in ~/.claude/projects/. Claude riceve il percorso quando l'esecuzione inizia, quindi puoi chiederglielo. Puoi aprire quel file per leggere l'orchestrazione che Claude ha scritto, confrontarlo con lo script di un'esecuzione precedente, o modificarlo e chiedere a Claude di riavviare dalla versione modificata.
Il runtime traccia il risultato di ogni agente mentre l'esecuzione progredisce, il che è quello che rende un'esecuzione riprendibile all'interno della stessa sessione.
Comportamento e limiti
Il runtime applica i seguenti vincoli:
| Vincolo | Perché |
|---|---|
| Nessun input dell'utente durante l'esecuzione | Solo i prompt di autorizzazione dell'agente possono mettere in pausa un'esecuzione. Per l'approvazione tra le fasi, esegui ogni fase come suo proprio flusso di lavoro |
| Nessun accesso diretto al filesystem o shell dallo script del flusso di lavoro stesso | Gli agenti leggono, scrivono ed eseguono comandi. Lo script coordina gli agenti |
| Fino a 16 agenti concorrenti, meno su macchine con core CPU limitati | Limita l'uso delle risorse locali |
| 1.000 agenti totali per esecuzione | Previene cicli incontrollati |
Gestire le esecuzioni
Una volta che un'esecuzione inizia, la gestisci dalla vista /workflows, o espandendo la sua riga di progresso nel pannello attività sotto la casella di input.
Riprendere dopo una pausa
Se fermi un'esecuzione, puoi riprenderla: gli agenti che hanno già completato restituiscono i loro risultati memorizzati nella cache, e il resto viene eseguito dal vivo. Riprendi un'esecuzione in pausa da /workflows selezionandola e premendo p, o chiedi a Claude di riavviare il flusso di lavoro con lo stesso script.
La ripresa funziona all'interno della stessa sessione di Claude Code. Se esci da Claude Code mentre un flusso di lavoro è in esecuzione, la sessione successiva avvia il flusso di lavoro da capo.
Costo
Un flusso di lavoro genera molti agenti, quindi una singola esecuzione può usare significativamente più token rispetto al lavoro attraverso lo stesso compito in conversazione. Le esecuzioni contano verso l'utilizzo del tuo piano e i limiti di velocità come qualsiasi altra sessione.
Per valutare la spesa prima di impegnarsi in un compito di grandi dimensioni, esegui il flusso di lavoro su una piccola porzione prima: una directory invece dell'intero repository, o una domanda ristretta invece di una ampia. La vista /workflows mostra l'utilizzo dei token di ogni agente mentre l'esecuzione progredisce, e puoi fermare l'esecuzione lì in qualsiasi momento senza perdere il lavoro completato. I limiti degli agenti del runtime limitano quanti agenti una singola esecuzione può generare, il che limita il costo di uno script fuori controllo.
Ogni agente in un flusso di lavoro usa il modello della tua sessione a meno che lo script non instrada una fase a uno diverso. Per controllare il costo del modello:
- Controlla
/modelprima di un'esecuzione grande se di solito passi a un modello più piccolo per il lavoro di routine - Chiedi a Claude di usare un modello più piccolo per le fasi che non hanno bisogno di quello più forte quando descrivi il compito
Disattivare i flussi di lavoro
I flussi di lavoro sono disponibili nel CLI, nell'app Desktop, nelle estensioni IDE, modalità non interattiva con claude -p e nell'Agent SDK. Le stesse impostazioni di disabilitazione si applicano su ogni superficie.
Per disattivare i flussi di lavoro per te:
- Attiva/disattiva Dynamic workflows in
/config. Persiste tra le sessioni. - Imposta
"disableWorkflows": truein~/.claude/settings.json. Persiste tra le sessioni. - Imposta
CLAUDE_CODE_DISABLE_WORKFLOWS=1. Letto all'avvio, quindi si applica ovunque lo imposti.
Per disattivare i flussi di lavoro per tutta la tua organizzazione, imposta "disableWorkflows": true in impostazioni gestite, o usa l'interruttore sulla pagina impostazioni amministratore di Claude Code.
Quando i flussi di lavoro sono disabilitati, i comandi di flusso di lavoro in bundle non sono disponibili, la parola chiave ultracode non attiva più un'esecuzione e ultracode viene rimosso dal menu /effort.
Risorse correlate
- Eseguire agenti in parallelo: confrontare subagenti, vista agente, team di agenti e flussi di lavoro
- Creare subagenti personalizzati: la primitiva worker che i flussi di lavoro orchestrano
- Gestire i costi: come le esecuzioni multi-agente contano verso i limiti di utilizzo