Problem
A general-purpose assistant drowns in context: it sees everything, so it's mediocre at everything - and in a real organisation it must NOT see everything. Contracts, HR files, salary data. An assistant that paraphrases a document to someone who isn't allowed to read it is a data breach with a chat interface.
What we built
Your data, siloed; your agents, specific
Episto is a closed ChatGPT for your team, built to scale to millions of documents. Each agent gets its own slice of the knowledge base and its own prompt - a focus-scoped agent doing one thing brilliantly beats a general agent swamped in context. Six agent kinds ship today - chat, HR, policy, feedback, ingestion, shaper.
Agents that produce, not just answer
Agents create entities - we call them things - in the context of work: structured records, documents, decisions that land back in the knowledge base instead of evaporating in a chat log.
Set up by one person, used by everyone
A technical lead - or the one tech-savvy person in a non-engineering firm - sets up the agents with the shaper, which interviews you and configures the workspace as you talk. Untrained personnel just use them.
Permissions underneath everything
Fine-grained access control weighs eight distinct sources - direct grants, groups, workspace defaults, trusted-system paths - and resolves a user's entire accessible scope in one batched call before any retrieval runs.
Findings
Permissions must shape retrieval
A permission filter applied to the answer is too late - by then the model has already read what it shouldn't. In Episto, a user's full accessible scope is resolved first, and search never leaves it.
The honest cost
Resolving effective access takes a median 551ms (p95 1.5s) in production before retrieval starts. That's the price of never generating from data the user couldn't open - we consider it well spent.
6
typed agent kinds, each scoped to its own slice
8
access sources weighed per permission decision
551ms
median access resolve, before retrieval starts
Use cases
Teams whose knowledge can't be world-readable: HR and legal folders, agencies with per-client confidentiality, enterprises where each department needs its own scoped assistant. Typed agents make it concrete - an onboarding bot that sees only public docs, a finance assistant scoped to its own folder, a leadership agent whose broader access is explicitly granted, not inherited.