Repository navigation
💡 Voice-Searchable Session Archive: Conversational Retrieval of Past Decisions and Outputs #515
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Summary
Users ask the avatar to find past work by speaking naturally — "find the session where we discussed the pricing model" or "what did we decide about the auth migration?" The avatar searches session summaries and decision metadata (FR46-47), presents the top matches as ActionCards, and can synthesize answers across multiple sessions. This transforms TalkTerm's session history from a passive log into an active, voice-searchable knowledge base that makes accumulated work findable and reusable.
Market Signal
ChatGPT offers basic text-based conversation history search but no voice-first search with avatar-narrated results. Enterprise knowledge management is a $25B+ market (Gartner 2026), and the gap between "information exists" and "information is findable" is consistently cited as a top knowledge worker frustration. No AI desktop agent offers voice-searchable session archives with conversational result presentation. The closest competitor feature — ChatGPT's history search — is text-only, returns raw conversation snippets, and offers no synthesis across sessions.
User Signal
The PRD mandates cross-session memory (FR46-47) and session resume (FR31), but current retrieval is limited to "most recent incomplete session" (FR33). As users accumulate sessions, finding specific past decisions becomes critical — a PM who brainstormed pricing models three weeks ago shouldn't need to scroll through 20+ sessions to find that decision. The PRD's success metric of daily usage (≥1 session/day) means 30+ sessions in the first month alone. Without search, past work becomes invisible, and users lose confidence that TalkTerm remembers.
Technical Opportunity
SQLite already stores session data per the architecture (better-sqlite3). SQLite FTS5 provides full-text search with minimal overhead — well-suited for the structured session summaries mandated by FR46-47. Voice queries are natural language, parsed by Claude (the existing agent backend) into search parameters. Search results are displayed as ActionCards (UX-DR2) in the existing left panel, with session preview in the OutputPanel (FR45 document mode). Architecture is fully aligned: this is an incremental extension of existing data and UI components, not a new system. Implementation touches the storage bounded context (
main/storage/) for FTS5 index, agent bounded context (main/agent/) for query parsing, and renderer (components/) for result display.Assessment
Adversarial Review
Strongest objection: Search quality depends entirely on the quality of session summaries (FR46-47). If summaries are poor or inconsistent, search results will be unreliable and erode user trust.
Rebuttal: FR46-47 already mandates structured summaries with decisions, project vocabulary, and workflow outcomes — the summary quality investment is required regardless of search. FTS5 supports relevance ranking, and Claude can augment keyword search with semantic understanding of voice queries ("the one about pricing" → search for "pricing", "cost model", "revenue"). Start with exact-match search on session titles and decision keywords; expand to semantic search as the summary corpus grows. The avatar honestly acknowledges search uncertainty: "I found 3 sessions that might be relevant — here are the closest matches" rather than presenting uncertain results as definitive.
Suggested Next Step
Define the FTS5 schema extension for session summaries (indexed columns: session title, decision keywords, output artifact names, workflow type). Design the voice query → search parameter mapping via Claude. Create a UX spec for search results as ActionCards with session preview in the OutputPanel, including "no results" and "multiple matches" conversation flows.
All reactions