Why one server
Knowledge only counts when someone owns it, has approved it, may see it and knows how fresh it is. One place applies those rules to every reader, so no client can skip them.
Architecture
One server holds the rules: who owns an entry, who may read it, how fresh it is. Everything else, the app people use, the assistants and the tools around them, reaches knowledge only through it.
The pieces
People use the app; assistants speak MCP. Both meet the same server, which applies the same access to every read, keeps everything in one database and runs its own small models.
Who reads
Around it, when you add them
Knowledge only counts when someone owns it, has approved it, may see it and knows how fresh it is. One place applies those rules to every reader, so no client can skip them.
An entry, its passages, their vectors and its review change together or not at all. With the vectors beside the text there is no second store to keep in step, and backups are one dump.
Search by meaning, across languages, and a reranker that judges whether a passage answers the question: the reason the hook can stay quiet when nothing does.
A search
The app's search, an assistant's search and brief, the hook, Ask's sources and a linked Lore's search all run the same steps.
An assistant's turn
In Claude Code, the lore command's hook sees each prompt. Any assistant can ask for a brief of its task over MCP. Both answer only when an entry clears the floor on its own.
Where it runs
What changes is who starts it and where its database comes from.
Lore Local, for one person
One app
A team server
loreYour servers: compose on one machine, or Kubernetes
Where data lives
The server keeps no state of its own that a second replica would miss. An entry is split into passages at its headings, each passage gets its vectors, and an event out is written in the same transaction as the change it reports, so none is lost or invented.
The app's own folder, private to you: the database, its backups (three kept) and the model cache. The database password is in the system's keychain.
The database you give it. The image writes only its checkouts, its backups and temporary files; logs go to standard output.
The lore command and a backup of every file it changed. Its token is in the system's keychain, never in a file.