Skip to main content

ConversationProvider

Trait ConversationProvider 

Source
pub trait ConversationProvider {
    // Required methods
    fn list_conversations(&self, project: &str) -> Result<Vec<String>>;
    fn load_conversation(
        &self,
        project: &str,
        conversation_id: &str,
    ) -> Result<ConversationView>;
    fn load_metadata(
        &self,
        project: &str,
        conversation_id: &str,
    ) -> Result<ConversationMeta>;
    fn list_metadata(&self, project: &str) -> Result<Vec<ConversationMeta>>;
}
Expand description

Trait for converting provider-specific conversation data into the generic ConversationView.

Implement this on your provider’s manager type (e.g. ClaudeConvo).

Required Methods§

Source

fn list_conversations(&self, project: &str) -> Result<Vec<String>>

List conversation IDs for a project/workspace.

Source

fn load_conversation( &self, project: &str, conversation_id: &str, ) -> Result<ConversationView>

Load a full conversation as a ConversationView.

Source

fn load_metadata( &self, project: &str, conversation_id: &str, ) -> Result<ConversationMeta>

Load metadata only (no turns).

Source

fn list_metadata(&self, project: &str) -> Result<Vec<ConversationMeta>>

List metadata for all conversations in a project.

Implementors§