Expand description
§Module: Dialogue
§Responsibility
Provides multi-turn conversation memory for agents. Each session tracks a chronological sequence of (role, content) turns and can be assembled into a prompt context that blends episodic memory with live dialogue history.
§Guarantees
- Thread-safe:
DialogueStorewraps its map inArc<Mutex<_>> - Non-panicking: all operations return
Result - Serialisable: all public types implement
serde::Serialize/serde::Deserialize - Lock-poisoning resilient: uses
crate::util::recover_lock
§NOT Responsible For
- Persistent storage of dialogue history (see
persistencemodule) - Semantic search across past conversations (see
memorymodule)
Structs§
- Dialogue
Context - A fully assembled prompt context combining episodic memory with the live dialogue history for a session.
- Dialogue
Session - A single conversation session holding an ordered history of turns.
- Dialogue
Store - Concurrent map of session ID →
DialogueSession. - Dialogue
Turn - A single turn in a multi-turn dialogue — a role/content pair.
Enums§
- Role
- The speaker role for a single dialogue turn.