Skip to content

Gestione delle Sessioni

L'agent può ispezionare, comunicare con e generare sessioni. Questi tool abilitano flussi di lavoro tra sessioni, delega di attività in background e messaggistica tra canali -- il tutto sotto l'applicazione del write-down.

Tool

sessions_list

Elencare tutte le sessioni attive visibili alla sessione corrente.

Non richiede parametri. I risultati vengono filtrati per livello di taint -- una sessione PUBLIC non può vedere i metadati di sessioni CONFIDENTIAL.

sessions_history

Ottenere la cronologia dei messaggi per una sessione tramite ID.

ParametroTipoObbligatorioDescrizione
session_idstringL'ID della sessione di cui recuperare la cronologia

L'accesso viene negato se il taint della sessione target è superiore al taint del chiamante.

sessions_send

Inviare contenuto dalla sessione corrente a un'altra sessione. Soggetto all'applicazione del write-down.

ParametroTipoObbligatorioDescrizione
session_idstringID della sessione target
contentstringIl contenuto del messaggio da inviare

Controllo write-down: Il taint del chiamante deve poter fluire verso il livello di classificazione della sessione target. Una sessione CONFIDENTIAL non può inviare dati a una sessione PUBLIC.

sessions_spawn

Generare una nuova sessione in background per un'attività autonoma.

ParametroTipoObbligatorioDescrizione
taskstringDescrizione di cosa la sessione in background dovrebbe fare

La sessione generata inizia con taint PUBLIC indipendente e il proprio spazio di lavoro isolato. Viene eseguita autonomamente e restituisce i risultati al completamento.

session_status

Ottenere metadati e stato per una sessione specifica.

ParametroTipoObbligatorioDescrizione
session_idstringL'ID della sessione da controllare

Restituisce ID sessione, canale, utente, livello di taint e orario di creazione. L'accesso è controllato dal taint.

message

Inviare un messaggio a un canale e destinatario. Soggetto all'applicazione del write-down tramite hook di policy.

ParametroTipoObbligatorioDescrizione
channelstringCanale target (es. telegram, slack)
recipientstringIdentificatore del destinatario all'interno del canale
textstringTesto del messaggio da inviare

summarize

Generare un riassunto conciso della conversazione corrente. Utile per creare note di passaggio, comprimere il contesto o produrre un riepilogo per la consegna a un altro canale.

ParametroTipoObbligatorioDescrizione
scopestringnoCosa riassumere: session (predefinito), topic

simulate_tool_call

Simulare una chiamata a un tool per prevedere la decisione del motore delle policy senza eseguire il tool. Restituisce il risultato della valutazione dell'hook (ALLOW, BLOCK o REDACT) e le regole che sono state valutate.

ParametroTipoObbligatorioDescrizione
tool_namestringIl tool di cui simulare la chiamata
argsobjectnoArgomenti da includere nella simulazione

Utilizzare simulate_tool_call per verificare se una chiamata a un tool

sarà consentita prima di eseguirla. Questo è utile per comprendere il comportamento delle policy senza effetti collaterali. :::

Casi d'Uso

Delega di Attività in Background

L'agent può generare una sessione in background per gestire un'attività di lunga durata senza bloccare la conversazione corrente:

Utente: "Cerca i prezzi della concorrenza e prepara un riepilogo"
Agent:  [chiama sessions_spawn con l'attività]
Agent:  "Ho avviato una sessione in background per fare la ricerca. Avrò i risultati a breve."

Comunicazione tra Sessioni

Le sessioni possono inviare dati l'una all'altra, abilitando flussi di lavoro dove una sessione produce dati che un'altra consuma:

Sessione in background completa la ricerca → sessions_send al genitore → il genitore notifica l'utente

Messaggistica tra Canali

Il tool message consente all'agent di contattare proattivamente su qualsiasi canale connesso:

L'agent rileva un evento urgente → message({ channel: "telegram", recipient: "owner", text: "Allerta: ..." })

Sicurezza

  • Tutte le operazioni sulle sessioni sono controllate dal taint: non è possibile vedere, leggere o inviare a sessioni al di sopra del proprio livello di taint
  • sessions_send applica la prevenzione del write-down: i dati non possono fluire verso una classificazione inferiore
  • Le sessioni generate iniziano a taint PUBLIC con tracciamento del taint indipendente
  • Il tool message passa attraverso gli hook di policy PRE_OUTPUT prima della consegna
  • Gli ID di sessione vengono iniettati dal contesto runtime, non dagli argomenti del LLM -- l'agent non può impersonare un'altra sessione

SICUREZZA La prevenzione del write-down è applicata su tutta la

comunicazione tra sessioni. Una sessione contaminata a CONFIDENTIAL non può inviare dati a una sessione o canale PUBLIC. Questo è un confine rigido applicato dal livello delle policy. :::