Automation

Flusso delle attività

Task Flow è il substrato di orchestrazione dei flussi che si colloca sopra le attività in background. Gestisce flussi durevoli a più passaggi con il proprio stato, tracciamento delle revisioni e semantica di sincronizzazione, mentre le singole attività restano l'unità di lavoro scollegato.

Quando usare Task Flow

Usa Task Flow quando il lavoro si estende su più passaggi sequenziali o ramificati e hai bisogno di tracciamento durevole dell'avanzamento tra riavvii del gateway. Per singole operazioni in background, una semplice attività è sufficiente.

Scenario Uso
Singolo job in background Attività semplice
Pipeline a più passaggi (A poi B poi C) Task Flow (gestito)
Osservare attività create esternamente Task Flow (rispecchiato)
Promemoria una tantum Job Cron

Pattern affidabile per workflow pianificati

Per workflow ricorrenti come briefing di intelligence di mercato, tratta la pianificazione, l'orchestrazione e i controlli di affidabilità come livelli separati:

  1. Usa le attività pianificate per la tempistica.
  2. Usa una sessione cron persistente quando il workflow deve basarsi sul contesto precedente.
  3. Usa Lobster per passaggi deterministici, gate di approvazione e token di ripresa.
  4. Usa Task Flow per tracciare l'esecuzione a più passaggi tra attività figlie, attese, tentativi e riavvii del gateway.

Forma di esempio per cron:

bash
openclaw cron add \  --name "Market intelligence brief" \  --cron "0 7 * * 1-5" \  --tz "America/New_York" \  --session session:market-intel \  --message "Run the market-intel Lobster workflow. Verify source freshness before summarizing." \  --announce \  --channel slack \  --to "channel:C1234567890"

Usa session:<id> invece di isolated quando il workflow ricorrente richiede deliberatamente cronologia, riepiloghi delle esecuzioni precedenti o contesto stabile. Usa isolated quando ogni esecuzione deve iniziare da zero e tutto lo stato richiesto è esplicito nel workflow.

All'interno del workflow, inserisci i controlli di affidabilità prima del passaggio di riepilogo LLM:

yaml
name: market-intel-briefsteps:  - id: preflight    command: market-intel check --json  - id: collect    command: market-intel collect --json    stdin: $preflight.json  - id: summarize    command: market-intel summarize --json    stdin: $collect.json  - id: approve    command: market-intel deliver --preview    stdin: $summarize.json    approval: required  - id: deliver    command: market-intel deliver --execute    stdin: $summarize.json    condition: $approve.approved

Controlli preflight consigliati:

  • Disponibilità del browser e scelta del profilo, per esempio openclaw per lo stato gestito o user quando è richiesta una sessione Chrome autenticata. Vedi Browser.
  • Credenziali API e quota per ogni fonte.
  • Raggiungibilità di rete per gli endpoint richiesti.
  • Strumenti richiesti abilitati per l'agente, come lobster, browser e llm-task.
  • Destinazione degli errori configurata per cron, così gli errori preflight sono visibili. Vedi attività pianificate.

Campi di provenienza dei dati consigliati per ogni elemento raccolto:

json
{  "sourceUrl": "https://example.com/report",  "retrievedAt": "2026-04-24T12:00:00Z",  "asOf": "2026-04-24",  "title": "Example report",  "content": "..."}

Fai in modo che il workflow rifiuti o contrassegni come obsoleti gli elementi prima del riepilogo. Il passaggio LLM dovrebbe ricevere solo JSON strutturato e dovrebbe essere istruito a preservare sourceUrl, retrievedAt e asOf nel suo output. Usa attività LLM quando ti serve un passaggio del modello con schema validato all'interno del workflow.

Per workflow riutilizzabili da team o community, impacchetta la CLI, i file .lobster e qualsiasi nota di configurazione come skill o plugin e pubblicalo tramite ClawHub. Mantieni i guardrail specifici del workflow in quel pacchetto, a meno che all'API del plugin manchi una capacità generica necessaria.

Modalità di sincronizzazione

Modalità gestita

Task Flow possiede il ciclo di vita end-to-end. Crea attività come passaggi del flusso, le porta a completamento e fa avanzare automaticamente lo stato del flusso.

Esempio: un flusso di report settimanale che (1) raccoglie dati, (2) genera il report e (3) lo consegna. Task Flow crea ogni passaggio come attività in background, attende il completamento, quindi passa al passaggio successivo.

Code
Flusso: weekly-report  Passaggio 1: gather-data     → attività creata → riuscita  Passaggio 2: generate-report → attività creata → riuscita  Passaggio 3: deliver         → attività creata → in esecuzione

Modalità rispecchiata

Task Flow osserva attività create esternamente e mantiene sincronizzato lo stato del flusso senza assumere la proprietà della creazione delle attività. Questo è utile quando le attività hanno origine da job cron, comandi CLI o altre fonti e vuoi una vista unificata del loro avanzamento come flusso.

Esempio: tre job cron indipendenti che insieme formano una routine "operazioni mattutine". Un flusso rispecchiato traccia il loro avanzamento collettivo senza controllare quando o come vengono eseguiti.

Stato durevole e tracciamento delle revisioni

Ogni flusso conserva il proprio stato e traccia le revisioni affinché l'avanzamento sopravviva ai riavvii del gateway. Il tracciamento delle revisioni abilita il rilevamento dei conflitti quando più fonti tentano di far avanzare contemporaneamente lo stesso flusso. Il registro dei flussi usa SQLite con manutenzione limitata del write-ahead log, inclusi checkpoint periodici e allo spegnimento, così i gateway a lunga esecuzione non mantengono file collaterali registry.sqlite-wal senza limiti.

Comportamento di annullamento

openclaw tasks flow cancel imposta un'intenzione di annullamento persistente sul flusso. Le attività attive all'interno del flusso vengono annullate e non vengono avviati nuovi passaggi. L'intenzione di annullamento persiste tra i riavvii, quindi un flusso annullato resta annullato anche se il gateway si riavvia prima che tutte le attività figlie siano terminate.

Comandi CLI

bash
# List active and recent flowsopenclaw tasks flow list # Show details for a specific flowopenclaw tasks flow show <lookup> # Cancel a running flow and its active tasksopenclaw tasks flow cancel <lookup>
Comando Descrizione
openclaw tasks flow list Mostra i flussi tracciati con stato e modalità di sincronizzazione
openclaw tasks flow show <id> Ispeziona un flusso per ID flusso o chiave di ricerca
openclaw tasks flow cancel <id> Annulla un flusso in esecuzione e le sue attività attive

Come i flussi si relazionano alle attività

I flussi coordinano le attività, non le sostituiscono. Un singolo flusso può guidare più attività in background durante il suo ciclo di vita. Usa openclaw tasks per ispezionare singoli record di attività e openclaw tasks flow per ispezionare il flusso di orchestrazione.

Correlati

Was this useful?