> ## Documentation Index
> Fetch the complete documentation index at: https://docs.charmos.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Threads & State

Threads represent ongoing user-agent sessions. They are especially important for interactive agents that need conversation history.

## What Threads Provide

* Multi-turn context.
* Message history.
* Run grouping.
* Follow-up questions.
* User-visible conversation state.

## Thread IDs

The Store passes a thread ID when a run belongs to an existing conversation. Agents can use this ID to associate output with a specific user session.

## State Snapshots

Some runtimes may receive state snapshots or history payloads. Agents should treat these as user/session context, not as global memory.

## Cross-Device Rehydration

Threads act as the critical key for enabling seamless cross-device continuity. When a user authenticates on a new device (e.g., moving from the Web Gateway to the Desktop App) and provides an existing `thread_id`, the platform automatically queries the database to rehydrate the complete execution history and session state. This allows interactive agents to resume conversations without losing context.

## Workspace Isolation

The cloud runner dynamically provisions highly isolated workspaces using the pattern `/workspace/{user_id}/{agent_id}/{thread_id}`.

* Serverless and interactive runs treat each thread as an isolated sandbox, ensuring that generated artifacts, uploaded files, and local memory (`MEMORY.md`) remain strictly segregated per user session.
* Daemon agents may share a longer-lived workspace depending on implementation.

## Use Cases

* Chat assistants.
* Iterative research.
* Follow-up edits.
* Support conversations.
