Decisions get made in Slack.
Then they disappear.
Every team has the same problem. A critical architectural decision was made in a Slack thread six months ago. A Jira ticket explains why a feature was deprioritized. But nobody can find it. The thread is buried under thousands of messages. The ticket is closed and forgotten. A new team member asks why things work the way they do — and nobody really knows.
Organizational memory lives in conversations and tickets. Lore makes that memory searchable, queryable, and permanent. Ask "why was the mobile app deprioritized?" and Lore tells you exactly who said it, in which channel, and when.
A full RAG pipeline end to end
Real answers from real data
Async all the way down
The entire query path is non-blocking. Embedding generation runs in asyncio.to_thread to avoid blocking the event loop on CPU-bound inference. The Supabase RPC call is also offloaded. Jira sync uses httpx.AsyncClient with proper pagination via nextPageToken. The result: a FastAPI server that handles concurrent queries without starving.
It knows when not to answer.
Cosine similarity threshold of 0.35 filters out irrelevant results before they reach the LLM. If nothing in the vector store is relevant to the question, Lore says so clearly instead of hallucinating. Upsert-based deduplication means running Jira sync hourly never pollutes the database with duplicates.
What Lore does
/search/jql endpoint and nextPageToken pagination.all-MiniLM-L6-v2 embeddings with IVFFlat cosine similarity search via Supabase pgvector. Results filtered at 0.35 threshold — no hallucinated answers.(source, channel, timestamp, author) means running sync multiple times never creates duplicate entries.How it's built
Where Lore goes next
Authentication & Multi-tenancy
Clerk/Auth0 SSO login with Supabase Row Level Security for org-level data isolation. Each org connects their own Slack and Jira via OAuth — no manual key swapping.
Confluence & Notion Connectors
Expand the knowledge base beyond real-time messages to include wikis, docs, and decision logs.
Slack Bot Query Mode
Ask Lore directly from Slack via @lore why was X deprioritized? — answers delivered inline in the channel without leaving the workspace.
Admin Dashboard
Ingestion stats, query logs, source health monitoring, and relevance feedback (thumbs up/down) to improve retrieval quality over time.
Live and working
Deployed on HuggingFace Spaces (backend) + Vercel (frontend) · Connected to real Slack workspace and Jira project · Full RAG pipeline verified end to end