@hivetechs/hive-ai
Version:
Real-time streaming AI consensus platform with HTTP+SSE MCP integration for Claude Code, VS Code, Cursor, and Windsurf - powered by OpenRouter's unified API
64 lines • 2.12 kB
TypeScript
/**
* Enhanced conversation continuity manager for the hive-tools consensus tool
*
* This provides a sophisticated system for maintaining conversation continuity
* with timestamp-based ordering and prioritization of recent conversations.
* It works in conjunction with the SQLite-based knowledge retrieval system.
*
* Features:
* - Timestamp-based ordering of conversations and messages
* - Importance scoring for messages based on content and role
* - Recency prioritization with decay function
* - Thematic topic tracking for better context retrieval
* - Integration with vector-based semantic search
*/
interface Message {
role: string;
content: string;
timestamp: string;
importance?: number;
embedding?: number[];
}
interface Conversation {
id: string;
messages: Message[];
lastUpdated: string;
createdAt: string;
topics: string[];
summary?: string;
isActive: boolean;
lastUserQuery?: string;
lastUserQueryTime?: string;
recencyScore?: number;
}
/**
* Create a new conversation with enhanced metadata
*/
export declare function createConversation(): string;
/**
* Get a conversation by ID
*/
export declare function getConversation(id: string): Conversation | undefined;
/**
* Add a message to a conversation with enhanced metadata
*/
export declare function addMessage(conversationId: string, role: string, content: string, importance?: number): void;
/**
* Enhanced algorithm to find the most semantically similar conversation
* This is a fallback for the SQLite-based system and works in coordination with it
*/
export declare function findRelevantConversation(query: string): Promise<string | null>;
/**
* Get the most recent conversation
*/
export declare function getLatestConversation(): Conversation | undefined;
/**
* Get the conversations sorted by recency score
*/
export declare function getConversationsByRecency(limit?: number): Conversation[];
/**
* Get or create a conversation
*/
export declare function getOrCreateConversation(id?: string): string;
export {};
//# sourceMappingURL=conversation-memory.d.ts.map