Thread e sessioni Matrix in OpenClaw
L’ambito di sessione dei messaggi diretti, le modalità di risposta nei thread, l’ereditarietà dei thread, le associazioni di conversazione ACP, la policy di associazione dei thread e la cronologia della stanza limitata ai messaggi in sospeso
Matrix supporta i thread nativi, e OpenClaw tratta il threading e l’instradamento delle sessioni come due decisioni indipendenti: dove viene pubblicata una risposta e a quale sessione appartiene una conversazione. Aggiungi le associazioni ACP, che trasformano una stanza o un thread in uno spazio di lavoro di programmazione durevole, e una finestra di cronologia della stanza che contiene solo ciò che l’agente non ha ancora visto, e hai il quadro completo. Ecco le due leve, l’ereditarietà e i comandi, le associazioni ACP e la loro configurazione, e le regole della cronologia.
Le due leve
- L’ambito di sessione dei messaggi diretti decide come le stanze dei messaggi diretti corrispondono alle sessioni: per utente, il valore predefinito, condivide una sola sessione tra tutte le stanze di messaggi diretti con lo stesso interlocutore instradato, mentre per stanza assegna a ogni stanza di messaggi diretti Matrix la propria chiave di sessione, anche per lo stesso interlocutore.
- Il threading delle risposte decide dove pubblica il bot: con off le risposte restano al livello principale e i messaggi in arrivo nei thread restano sulla sessione padre, con inbound il bot risponde all’interno di un thread solo quando il messaggio in arrivo vi si trovava già, e con always risponde in un thread che ha come radice il messaggio che l’ha attivato e instrada quella conversazione attraverso una sessione limitata al thread fin dal primo trigger; un override solo per i messaggi diretti può mantenere piatti i messaggi diretti, mentre i thread delle stanze restano isolati.
- Selezionare una destinazione di risposta all’interno di un thread conserva sia il thread sia il messaggio selezionato, e i metadati di risposta che i client meno recenti ricevono sui messaggi nei thread non vengono trattati come un messaggio citato nel contesto dell’agente.
- I messaggi in arrivo nei thread includono la radice del thread come contesto aggiuntivo, gli invii dello strumento dei messaggi ereditano automaticamente il thread corrente quando puntano alla stessa stanza o allo stesso utente dei messaggi diretti, a meno che non venga indicato un ID di thread, il riutilizzo della destinazione utente nei messaggi diretti si applica solo quando i metadati della sessione dimostrano che si tratta dello stesso interlocutore sullo stesso account, e i comandi di sessione unbind, agents, idle e max-age, insieme agli spawn ACP associati a un thread, funzionano tutti nelle stanze e nei messaggi diretti di Matrix.
Le associazioni di conversazione esplicite prevalgono sempre su sessionScope; le stanze e i thread associati mantengono la sessione di destinazione scelta.
Associazioni ACP
Stanze, messaggi diretti e thread esistenti di Matrix possono diventare spazi di lavoro ACP durevoli senza cambiare la superficie della chat. Il flusso per l’operatore è un solo comando: uno spawn ACP con il flag bind-here all’interno del messaggio diretto, della stanza o del thread che vuoi continuare a usare; in un messaggio diretto o in una stanza di livello principale la superficie corrente resta la chat e i messaggi futuri vengono instradati alla sessione ACP avviata, all’interno di un thread esistente il flag associa quel thread sul posto, i comandi di nuova sessione e di reset reimpostano sul posto la stessa sessione associata, e un comando di chiusura ACP termina la sessione e rimuove l’associazione. Il flag bind-here non crea mai un thread figlio; la creazione o l’associazione di un thread figlio tramite l’opzione thread del comando spawn è subordinata all’impostazione spawn-sessions. Quando OpenClaw rileva una stanza di messaggi diretti che entra in collisione con un’altra sulla stessa sessione condivisa, pubblica un avviso una tantum che suggerisce l’ambito per stanza, solo mentre le associazioni dei thread sono attive.
Configurazione e cronologia
- Matrix eredita i valori predefiniti globali delle associazioni dei thread, con override per canale: l’attivazione, le ore di inattività, l’età massima, un flag spawn-sessions che controlla sia gli spawn di thread dei sub-agenti sia quelli ACP ed è attivo per impostazione predefinita, e un contesto di spawn predefinito; le vecchie chiavi di spawn per tipo, deprecate, vengono migrate dalla correzione di doctor, e un contesto di spawn isolato impedisce agli spawn nativi di thread dei sub-agenti di biforcare la trascrizione padre.
- Un limite di cronologia stabilisce quanti messaggi recenti della stanza vengono inclusi come cronologia in entrata quando un messaggio della stanza attiva l’agente; se non è impostato ripiega sul limite globale delle chat di gruppo, e se non sono impostati né l’uno né l’altro vale zero, cioè disattivato; la cronologia della stanza riguarda solo le stanze, mentre i messaggi diretti mantengono la normale cronologia della sessione.
- La cronologia della stanza è limitata ai messaggi in sospeso: OpenClaw mette in buffer i messaggi della stanza che non hanno attivato una risposta, acquisisce un’istantanea di quella finestra quando arriva una menzione o un altro trigger, tiene il trigger corrente fuori dal blocco della cronologia perché è il corpo in entrata, e nei nuovi tentativi dello stesso evento riutilizza l’istantanea originale invece di spostarsi in avanti.
OpenClaw su Matrix è l’articolo sul canale che questo approfondisce, mentre la guida alle sessioni di OpenClaw descrive le chiavi e i reset su cui si basano queste corrispondenze.
La stessa struttura su Discord
Associazioni dei thread, controlli di inattività e di età massima e associazioni ACP sono una policy condivisa tra i canali, quindi un flusso di lavoro imparato su uno si trasferisce agli altri. L’articolo su thread e sessioni Discord in OpenClaw è la versione Discord della stessa pagina, mentre i sub-agenti di OpenClaw sono gli spawn che ricevono sessioni associate a un thread.
Su Diali
Matrix è nell’elenco dei canali collegabili di Diali, insieme a WhatsApp, Telegram, Discord, Slack, Mattermost, SMS e voce: l’account sull’homeserver e l’elenco degli autorizzati delle stanze sono tuoi, il Gateway è nostro. OpenClaw ospitato su Diali è l’assistente, mentre la guida per collegare il tuo primo canale in cinque minuti spiega come si collegano questi canali.
- L’ambito decide la sessione; il threading decide la risposta.
- Le associazioni prevalgono; bind-here non crea mai un thread.
- La cronologia è limitata ai messaggi in sospeso e l’istantanea resta stabile nei nuovi tentativi.
Basta leggere, creane uno tuo
Configura un agente, scegli un canale e fallo lavorare dentro l’app che tieni già aperta.
