Your data stays where you already keep it.
Open source, running in your infrastructure, under credentials you hold. Or managed by us, in a tenant of your own.
How we think about security.
-
Ownership
The runtime runs in your infrastructure, under credentials you hold. We keep no copy of your data.
-
Control
You decide what the agent can reach, per workspace and per person. Set it, change it, revoke it.
-
Visibility
Every run is recorded — inputs, tool calls, outputs and cost — attributed to a person.
-
Openness
Apache 2.0. Your reviewer reads the code that handles your data, not our description of it.
Self-hosted or managed. Yours either way.
| Compared | Self-hosted Apache 2.0, your infrastructure | Managed We run it, in an isolated tenant |
|---|---|---|
| Runs on | Your cluster, VM or laptop | A namespace we operate |
| Your data | Never reaches us | Yours, held to run the service |
| Credentials | Never sent to us | Per workspace, never pooled |
| Model provider | Any, including your own | Any, including your own |
| Encryption at rest | Your keys | AWS-managed keys |
| Upgrades | When you choose | We handle it |
Every run leaves a record.
Open standards, exported to infrastructure you already run — or, with nothing configured, to nowhere at all.
- Traces OpenTelemetry over OTLP, to your collector.
- Logs JSON to stdout, stamped with workspace and trace id.
- Metrics Rate, errors and duration, on your Prometheus.
- Ledger Tokens and cost per call, attributed to a person.
- 09:14:02 run.start sarah@acme.co
- 09:14:03 tool.call crm.search
- 09:14:05 llm.response 1,204 tokens
- 09:14:07 tool.call files.write
- 09:14:09 skill.loaded renewal-review
- 09:14:11 run.done $0.031
The other workspace isn't blocked. It has no name.
Most isolation is a filter: query everything, then strip what the caller should not see. One wrong predicate and it leaks. Here a session is handed the tool namespace of exactly one workspace, so the identifier that would address a second one does not exist.
Which is why offboarding is not a cleanup job. Credentials sit with their owner and are never pooled, and membership is checked per run.
- Admin and member roles, against a real identity
- Personal connections stay outside any workspace
- Row-level scoping in the database, not the application
Ready for your security review.
-
SOC 2 Type II
Ready
Controls mapped to the Trust Services Criteria and operating. Audit not yet run.
-
GDPR
On request
Data processing agreement on request.
-
Vulnerability disclosure
Published
security@nimblebrain.ai. Acknowledged in 48 hours, advisory when the fix ships.
Questions a security review asks
Where does the runtime actually execute?
Are you SOC 2 certified?
What happens when someone is offboarded?
Can we audit what the agent did?
Who are your subprocessors?
Is data encrypted?
Can we review the source?
Which model provider does our data go to?
How do we report a vulnerability?
More of the platform
Each capability has a page. These are the ones nearest this.