Self-hosting
The licence, what runs where, and the state of the self-host bundle.
Licence
Atrix Analytics is open-core:
| Part | Licence |
|---|---|
| SDKs, event contracts, the statistics engine, the CLI and codegen | MIT |
| Control-plane API, console, data plane (ingest, processing, query compiler, region API), MCP server, the basic AI analyst, deployment files | AGPL-3.0 |
| Proactive findings, replay summaries and semantic search, SAML/SCIM, custom roles, audit export, warehouse-native export, multi-region federation, billing | Commercial (ee/) |
The AGPL lets you run, study, modify and self-host the platform. If you offer a modified version to others over
a network, you must make your modified source available to them under the same licence. Nothing outside ee/
depends on ee/, so an AGPL-only build is complete for the core product. The basic AI analyst works
self-hosted with your own model key.
What a deployment is made of
| Service | Language | Role |
|---|---|---|
atrix-api | Rust | Control plane: accounts, organisations, projects, keys, tokens, OAuth, billing |
atrix-capture | Rust | Ingest: /e, /r, /wh |
atrix-processor | Rust | Redpanda → deduplication → ClickHouse, identity |
atrix-flags | Rust | Flag evaluation and definitions |
atrix-region-api | Rust | Queries, SQL, persons, replays, Ask |
atrix-replay | Rust | Replay chunks → object storage |
atrix-mcp | Rust | The MCP server |
atrix-erasure, atrix-export | Rust | GDPR erasure phases; Parquet export to S3 |
atrix-revenue | Rust | Revenue webhook normalisation and currency conversion |
| console | TypeScript | A static single-page app |
Backing services: PostgreSQL (a global and a regional database), ClickHouse, Redpanda (Kafka API), Valkey, and S3-compatible object storage (the bundle uses Garage).
Status
In progress
A supported self-host bundle, with Docker Compose for a single machine and a Helm chart for Kubernetes plus published AGPL images, is being prepared for general availability. Today the repository contains the development stack and the production Compose file we run ourselves; they are the reference, not yet a supported product.
To try the whole stack locally from a checkout (Docker, the pinned Rust toolchain and Bun required):
bun install
bun run dev:all # the docker stack, migrations, every service and the console; Ctrl-C stops itThe console is then on http://localhost:4500. bun run sim:load loads a synthetic dataset if you want data
to explore.