Run the whole Data Agent on your own infrastructure.

The Tablize runtime is open source. The same binary that powers tablize.com runs on your servers, in your VPC, with your data never leaving your perimeter.

What's open source

Agent runtime
The full conversational agent core: WebSocket protocol, tool registry, session management, LLM provider router (Anthropic / GLM / Grok / OpenRouter).
All 5 domains
Data, IoT, App, Media, Platform — every domain module that exposes tools to the agent.
All 38 integrations
Stripe, Shopify, GA4, every connector. OAuth flows, sync engines, credential vault.
Web UI
The React workspace UI, chat interface, Spaces visualization, dashboard renderer.
CLI
The single Rust binary that ships the whole thing.

What's cloud-only

A few things stay in the managed cloud — the infrastructure, the billing, and the optional managed LLM pool. None of it is required to run Tablize; it's just the convenient version for teams that don't want to operate the platform themselves.

Managed Fly.io infrastructure
Per-workspace dedicated machines, automatic provisioning, snapshots, scaling.
Managed LLM pool
The pooled Anthropic/OpenAI credits that ship with paid tiers. You can run self-hosted with your own keys instead.
Billing + workspace lifecycle
The Stripe billing integration, workspace creation flow, account management UI specific to the managed cloud.
Federation across workspaces
Multi-workspace federation on the Max tier requires the managed control plane.

Architecture

Tablize is a single Rust binary that bundles the agent runtime, the HTTP server, all five product domains, and 38 connectors. The deploy story is Docker Compose: 5 containers (tablize binary, postgres, emqx, minio, python sandbox).

The crate layout enforces hard domain boundaries: Data, IoT, App, Media, and Platform each live in their own crate and cannot import each other. The tools crate is the only place that aggregates across all domains, registering each domain's tools into a global registry that the agent runtime calls into.

Storage is one Postgres instance with multiple schemas (iot.*, data.*, app.*, media.*, platform.*). TimescaleDB handles time-series. There's no event bus between domains — cross-domain coordination happens through the agent runtime's tool-call mechanism.

More on the design choices: Why we built Tablize as one Rust binary instead of microservices.

When self-hosting makes sense

Data residency requirements

Healthcare, finance, regulated industries where data cannot leave your perimeter. Self-host, point the agent at your own LLM key, never send a row to a third party.

Air-gapped environments

For deployments behind a firewall with no internet egress. The self-hosted build can run with a local LLM (Ollama, vLLM-served Llama, etc.) and zero outbound calls.

Cost predictability at scale

For high-volume workloads where the managed per-workspace tier doesn't fit. Run it on your own hardware, pay your own LLM bill, no per-workspace overhead.

Customization

Forking is encouraged. Add domain-specific tools, swap the auth layer, build your own integration. The crate boundaries make this surgical.

How to self-host

The deploy script is a thin wrapper around Docker Compose. On any Linux host with Docker installed:

git clone https://github.com/tablize/tablize.git
cd tablize
cp .env.example .env
# edit .env to set ANTHROPIC_API_KEY (or other LLM provider), DOMAIN, etc.
docker compose up -d

Five containers start: tablize (the binary), postgres (with TimescaleDB), emqx (MQTT broker, optional if you don't use IoT), minio (S3-compatible storage), python-sandbox (for the Python tool).

Detailed documentation: see the README in the repo and the self-hosted docs.

License

The Tablize runtime ships under a permissive open-source license. You can run it commercially, fork it, modify it, deploy it for your customers. We ask only that derivative works clearly mark themselves as such and don't trade on the Tablize trademark.

Specific license details are in the LICENSE file in the repo. If you need a different licensing arrangement for a specific commercial use case, email hello@tablize.com.

How to contribute

We welcome contributions, especially: new integration connectors, bug fixes with clear repro steps, documentation improvements, and translations for additional locales. Open a PR on the repo. The CONTRIBUTING.md walks you through the local dev setup and the test infrastructure.

If you're considering a larger architectural change (a new domain, a major refactor), open an issue first to discuss the direction before writing code — saves both of us time.

Run Tablize on your own servers.

From cloning the repo to running the agent: 10 minutes on a fresh Linux host.

View on GitHub