Data boundaries
Every stored source, entity, relationship, task, artifact, and search is scoped by vaultId. Access is checked against the signed-in user or personal credential before data is returned.
Vault isolation
- A user can search only vaults they can access.
- A Slack channel answers from its assigned vault.
- General chat, email, MCP, and API requests select from the caller’s allowed vaults.
- A request that can reach several vaults should name the intended vault.
- Alpha does not use one client’s vault to answer a question about another client.
Personal vault fallback
A personal vault is private to its owner. Admins cannot open it. Ambiguous personal sources can land there so the owner can review them without exposing content to a client or team vault.
Credentials
API keys and OAuth tokens belong to one person. Revoking an organization or vault membership immediately reduces what the credential can reach. Write actions also check the person’s role.
Audit trail
API and MCP requests share a request ledger. Each record includes the surface, tool, result, duration, credential owner, selected vault where applicable, and a request ID. Sensitive arguments are redacted before storage.
Never place an Alpha API key in browser code, a public repository, or a client-side mobile build. Keep it in a server-side secret store.