Dove viene eseguito
Il Plugin Webhooks viene eseguito all’interno del processo Gateway. Se il tuo Gateway viene eseguito su un’altra macchina, installa e configura il plugin sull’host di quel Gateway, quindi riavvia il Gateway.Configurare le route
Imposta la configurazione inplugins.entries.webhooks.config:
enabled: facoltativo, valore predefinitotruepath: facoltativo, valore predefinito/plugins/webhooks/<routeId>sessionKey: sessione obbligatoria che possiede i TaskFlow collegatisecret: segreto condiviso o SecretRef obbligatoriocontrollerId: ID controller facoltativo per i flussi gestiti creatidescription: nota operatore facoltativa
secret supportati:
- Stringa semplice
- SecretRef con
source: "env" | "file" | "exec"
Modello di sicurezza
Ogni route è considerata attendibile per agire con l’autorità TaskFlow dellasessionKey configurata.
Questo significa che la route può ispezionare e modificare i TaskFlow posseduti da
quella sessione, quindi dovresti:
- Usare un segreto forte e univoco per ogni route
- Preferire i riferimenti ai segreti rispetto ai segreti in testo normale inline
- Collegare le route alla sessione più ristretta adatta al workflow
- Esporre solo il percorso Webhook specifico di cui hai bisogno
- Autenticazione tramite segreto condiviso
- Protezioni per dimensione del corpo della richiesta e timeout
- Limitazione della frequenza a finestra fissa
- Limitazione delle richieste in corso
- Accesso TaskFlow vincolato al proprietario tramite
api.runtime.tasks.managedFlows.bindSession(...)
Formato della richiesta
Invia richiestePOST con:
Content-Type: application/jsonAuthorization: Bearer <secret>oppurex-openclaw-webhook-secret: <secret>
Azioni supportate
Il plugin attualmente accetta questi valori JSONaction:
create_flowget_flowlist_flowsfind_latest_flowresolve_flowget_task_summaryset_waitingresume_flowfinish_flowfail_flowrequest_cancelcancel_flowrun_task
create_flow
Crea un TaskFlow gestito per la sessione collegata alla route.
Esempio:
run_task
Crea un’attività figlia gestita all’interno di un TaskFlow gestito esistente.
I runtime consentiti sono:
subagentacp