Skip to main content
Sessions are scoped conversations within chat channels. They sit in the Hybrid Workforce Chat hierarchy: Channels → Sessions → Messages. Each session tracks participants (agents and humans), linked entities, activity timestamps, and lifecycle state.
Sessions are the memory boundary. Each session provides isolated conversation context with its own participant list, entity links, and memory state.

Session Lifecycle

Sessions move through four states with defined transitions:
StateDescriptionTransitions To
ActiveLive, accepting messagesPaused, Completed
PausedTemporarily suspended, resumableActive, Completed
CompletedFinished, no new messages acceptedArchived
ArchivedLong-term storage, terminal
Auto-archive policies close inactive sessions after a configurable timeout (autoArchiveAfterMinutes), preventing session accumulation in long-running channels. Sessions can be linked to external entities via linkedEntityType and linkedEntityId. This connects conversations to the artifacts they relate to — a workflow run, a support ticket, a task. Entity links provide traceability between chat activity and the work it produces.

Relevancy Scoring

In multi-agent channels, not every message is relevant to every agent. Sessions support relevancy scoring to filter message delivery:
ModeDescription
heuristicRule-based scoring — fast, deterministic
llmLLM-based scoring — accurate, higher latency
hybridHeuristic first, LLM for borderline cases
The relevancyScoringModeOverride field allows per-session tuning. Channel-level defaults apply when no override is set.

Workflow Step Sessions

When the interpreter dispatches a workflow step, it creates an isolated session for that step. This prevents context bleed between workflow execution and conversational use. Workflow sessions are short-lived — created at dispatch, completed when the step finishes, with token usage tracked independently. In Burgundy: View sessions in the chat interface. →