Attivare subito un agente IA: Esegui ora, @claude e webhook
Fai partire subito un agente IA collegato su un'attività con Esegui ora, una menzione @claude o un webhook firmato che sveglia un agente non ancora in esecuzione.

Di Alejandro Rioja6 min di lettura
Fai clic su Esegui ora in un'attività, oppure scrivi @claude in un suo commento: entrambe le azioni creano la stessa richiesta, e Done la consegna all'istante a un agente collegato, invece di aspettare il suo prossimo controllo programmato. Se un agente è già in ascolto tramite MCP, la richiesta lo raggiunge in tempo reale; se non è collegato nulla, viene messa in coda come riga persistente che un agente raccoglie nel momento in cui si collega. E, se vuoi, Done può inviare un webhook in uscita firmato a un servizio separato, così qualcosa può svegliare l'agente.
Perché “prima o poi la prenderà” non sempre basta
Un agente che lavora a orari programmati (una Routine notturna, un cron ogni ora, una sessione di Claude Code che avvii tu) vede soltanto ciò che è cambiato dall'ultimo controllo. Per la maggior parte del lavoro va bene, ma non per la richiesta davvero urgente: un blocco appena risolto, qualcuno che vuole una cosa rivista entro oggi, oppure tu che stai guardando la bacheca in questo momento e vuoi che il passo successivo cominci subito, non alla prossima esecuzione programmata. I trigger esistono per colmare proprio questo vuoto.
Esegui ora: la versione con un clic
Ogni attività ha un pulsante Esegui ora. Facendo clic si crea un trigger, e la risposta ti dice onestamente se è successo qualcosa: “Consegnata: un agente è in ascolto” se un agente collegato l'ha raccolta in tempo reale, oppure “In coda: il tuo agente la prenderà in carico al prossimo collegamento” se non c'era nulla a riceverla. “In coda” non viene mostrato come un errore, perché non lo è: una richiesta che alle 23 non trova nessuno collegato è il caso normale, e lo scopo di registrarla è proprio che al mattino sia ancora lì.
@claude in un commento fa la stessa cosa
Scrivere “@claude” in un commento crea la stessa richiesta senza uscire dalla conversazione che stai già facendo sull'attività. Il parser è volutamente prudente: prima elimina i blocchi di codice e il codice in linea, così una riga di log incollata non lo attiva mai per sbaglio, e scarta un indirizzo email come ale@claude.ai e un nome diverso come @claudette. Conta solo “@claude” letterale e isolato. È un insieme più ristretto dei nomi che l'aggiunta rapida riconosce quando assegni a un agente un'attività nuova (lì @agent, @claude, @chatgpt e pochi altri significano tutti “assegna questa attività a un agente IA”); per attivare un'attività già esistente funziona solo @claude in un commento. Nemmeno il commento di un agente attiva l'agente stesso: se è l'agente a scrivere “@claude”, non viene creato nulla.
Che cosa significa davvero “consegnata”
“Consegnata” significa una cosa precisa: in quell'esatto momento era aperta la connessione autenticata di un agente al flusso di eventi in tempo reale di Done. Una persona che guarda la stessa attività in una scheda del browser non conta: solo una credenziale autenticata come agente, in ascolto in quel momento, riceve la consegna di un trigger. È una definizione volutamente rigida, perché “consegnata” è un'affermazione su ciò che è successo davvero, non su ciò che sarebbe dovuto succedere.
Quando non c'è nulla di collegato: in coda, non persa
Un trigger non scade nel momento in cui nessuno lo raccoglie. Resta aperto finché un agente non lo prende in carico, e passa davanti al normale ordine della coda: un agente che chiama list_triggers vede tutte le richieste aperte rivolte a lui (chi ha chiesto, quando, per quale attività e con quale istruzione) prima di ciò che next_task gli avrebbe comunque assegnato. claim_trigger ne prende una in modo atomico: se due agenti si collegano più o meno nello stesso momento, solo uno dei due finisce a lavorare su quella richiesta.
Svegliare un agente che non è affatto in funzione
list_triggers e il flusso di eventi in tempo reale presuppongono entrambi che qualcosa si colleghi almeno ogni tanto. Se non c'è nulla (nessun cron è ancora partito, nessuna sessione è aperta), Done può avvisare un URL che registri tu: un webhook in uscita, inviato nel momento in cui viene creato un trigger, che un altro processo (un piccolo servizio sempre attivo, una funzione serverless, qualunque cosa avvii davvero il tuo agente) può usare per far partire un'esecuzione. Si aggiunge all'invio sul flusso in tempo reale, non lo sostituisce mai, quindi per un agente già collegato non cambia nulla.
- Registrare l'URL è un'azione di una persona dentro Done, non qualcosa che un token MCP possa fare. È voluto: un agente capace di puntare Done verso un URL a sua scelta si sarebbe procurato un canale in uscita dal proprio ambiente isolato.
- Il contenuto è fatto di soli id: il nome dell'evento, l'id dell'attività e l'id dello spazio di lavoro. Nessun titolo, nessuna nota, nessun testo di istruzioni. Un URL del webhook trapelato, o una consegna che arriva all'host sbagliato, rivela soltanto che esiste un id di attività: l'agente che lo riceve deve comunque recuperare il contenuto vero con il proprio token MCP con ambito limitato, passando dagli stessi controlli di accesso di ogni altra lettura.
- Ogni consegna è firmata (HMAC-SHA256 su timestamp e corpo insieme, inviato nelle intestazioni X-Done-Signature e X-Done-Timestamp), così chi la riceve può verificare che arrivi davvero da Done e rifiutare tutto ciò che viene ripetuto da una vecchia consegna.
- L'URL deve essere https, e Done si rifiuta di registrarne uno che punta a un indirizzo privato o di loopback.
- Le consegne sono limitate a 60 all'ora per account, con un timeout di 5 secondi: un trigger è pensato per una persona che preme un pulsante, o per un @claude ogni tanto, non per un flusso continuo.
Configurare il webhook
Registra un URL una volta da dentro Done: ti viene restituito un signing secret solo in quel momento, senza alcun modo di recuperarlo più tardi, quindi copialo prima di cambiare pagina. Per controllare una consegna, chi la riceve calcola l'HMAC-SHA256, con quel segreto come chiave, sul valore di X-Done-Timestamp, un punto e il corpo grezzo, e confronta il risultato esadecimale con X-Done-Signature. Sostituire l'URL rigenera il segreto, e questo vale anche come revoca: puntalo altrove, oppure smetti semplicemente di fidarti del vecchio segreto, senza un passaggio di revoca separato.
Che cosa non cambia
Done resta una coda che un agente deve interrogare, mai uno schedulatore che si attiva per conto suo ed esegue gli strumenti di un agente: nulla di tutto questo fa partire una chiamata MCP a tuo nome. Ciò che risolve è più circoscritto: mettere all'istante una richiesta davanti a un agente collegato, invece di aspettare il suo prossimo controllo, e dare a qualcosa il modo di svegliare un agente quando nulla sta controllando. Prendere in carico, fare il lavoro e riferire resta interamente nella sessione dell'agente, esattamente come per ogni altra attività.
Domande frequenti
Come faccio lavorare subito un agente IA su un'attività, invece di aspettare?
Fai clic su Esegui ora nell'attività, oppure scrivi @claude in un suo commento. Entrambe le azioni creano la stessa richiesta: consegnata all'istante se un agente è già collegato tramite MCP, oppure messa in coda come riga persistente che l'agente raccoglie alla prossima connessione.
Che differenza c'è tra @claude in un commento e assegnare un'attività con @agent?
L'assegnazione di un'attività riconosce un insieme più ampio di nomi (@agent, @claude, @chatgpt e altri) per indicare a chi appartiene. L'attivazione di un'attività già esistente è più ristretta: solo @claude letterale in un commento crea un trigger, e i commenti di un agente non attivano mai l'agente stesso.
Un webhook può vedere che cosa c'è nelle mie attività?
No. Il contenuto del webhook è fatto di soli id (il nome dell'evento, l'id dell'attività e l'id dello spazio di lavoro), mai un titolo, delle note o il testo di un'istruzione. Chi lo riceve deve comunque recuperare l'attività vera con il proprio token MCP con ambito limitato.
Mi serve un piano a pagamento per usare Esegui ora, @claude o il webhook?
No: i trigger, le menzioni nei commenti e il webhook in uscita sono disponibili con ogni piano; nulla di tutto questo è riservato a Pro o a Teams.