corpus
One place for everything a team needs to remember or ask again later: chat, structured memory, notes, bookmarks, documents — and a knowledge search that spans all of it.
Institutional knowledge dies in five places at once: a chat thread, a note nobody can find, a bookmark saved and forgotten, a document in someone's inbox, and a decision that lives only in a colleague's head. The answers exist; retrieval is what is broken. corpus is the retrieval layer: one workspace where knowledge lands, gets structure, and can be asked a question.
Markdown notes, bookmarks, a document inbox for files that need a home, and chat — all first-class citizens of the same workspace instead of five disconnected apps.
Knowledge is organized the way people actually remember — a memory palace of wings, rooms, and items — so related knowledge lives together and browsing works when you don't know the keyword.
Knowledge search runs across every store at once — notes, memory, bookmarks, documents, chat history. The question “what did we decide about X?” gets an answer, not a list of folders to check.
The conversational surface answers from what the workspace holds — retrieval-augmented, grounded in a store the team controls.
Stack: TypeScript monorepo — Express API over Postgres with a typed ORM, OpenAPI-generated schemas and hooks shared by every surface, React + Vite front end.
Dumping everything into a vector store is the default RAG failure mode: when the embedding misses, the user gets nothing. corpus keeps human-legible structure — wings, rooms and items, collections, the inbox — and layers search over it, so retrieval degrades into browsing rather than a dead end. That structure also lets every answer point back to where it came from.
Teams genuinely produce all five kinds of knowledge, so chat, memory, notes, bookmarks, and documents each needed to exist. The decision was refusing to let them stay silos: every store lands in the same schema, which makes one question searchable across all of them at once.
Types and client hooks are generated from the single API contract, so the chat surface, the search, and the stores cannot silently disagree about the shape of knowledge.
Chat, memory, notes, bookmarks, documents and cross-store search running as one workspace — built and operated by us as the place our own knowledge lives.
The workspace pointed at your team's knowledge — wikis, decisions, documents, links — running in your infrastructure, with retrieval your people can trust because every answer shows its source.