What this app is not
A short note on scope so you can tell whether LocalLens is the right starting point.
LocalLens is a teaching example wrapped around a working app. To keep it useful, it's also small on purpose. Here's where it isn't the right fit.
It is not a production document-management system
No permissions, no multi-user access, no audit log, no encryption at
rest. Brains live in a plain JSON file under .locallens/. Chunks
live in QVAC's workspace directory. Back the folder up and you've
backed up the brain.
If you need any of that, you'll need to add it. The Extend section gives you reasonable hooks to start from.
It is not a generic chatbot
The chat model is wrapped by a grounded-prompt builder that refuses to answer from anything outside the retrieved excerpts. That's intentional — it's what makes the answers trustworthy on private content. It also makes LocalLens the wrong tool when you want a general assistant that draws on world knowledge.
It is not a cloud RAG backend
No hosted vector database. No queue. No distributed embedding service. The retrieval pipeline runs in-process through QVAC. Great for privacy, bad for horizontal scale — there's no shared state for a second worker to talk to.
If you want a hosted service for a team to share, LocalLens is the
wrong shape. If you want to build one, the modules in src/ are
still a useful map for what each layer needs to do.
Decision rule
Does this need to scale across machines, or does it need to stay on one machine? LocalLens is the second answer.