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:
| State | Description | Transitions To |
|---|
| Active | Live, accepting messages | Paused, Completed |
| Paused | Temporarily suspended, resumable | Active, Completed |
| Completed | Finished, no new messages accepted | Archived |
| Archived | Long-term storage, terminal | — |
Auto-archive policies close inactive sessions after a configurable timeout (autoArchiveAfterMinutes), preventing session accumulation in long-running channels.
Entity Links
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:
| Mode | Description |
|---|
heuristic | Rule-based scoring — fast, deterministic |
llm | LLM-based scoring — accurate, higher latency |
hybrid | Heuristic 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. →