Autonomous AI data discovery on your data warehouse. DecisionBox connects to your warehouse, runs an agent that decides what to investigate, writes and executes SQL, and ships validated insights and ranked recommendations — without you asking a single question.
Built for any team that makes decisions on data. Every finding is re-queried against your warehouse before it reaches you. Every SQL query, reasoning step, and decision logged and visible.

Your Data Warehouse DecisionBox Agent Dashboard
(BigQuery, Redshift, → (AI explores your data) → (Insights & Recommendations)
Snowflake, PostgreSQL,
Databricks, MSSQL)
writes SQL, validates
findings, generates
actionable advice
Claude (direct API), OpenAI, Ollama (local), Vertex AI (Claude + Gemini on GCP), AWS Bedrock, Azure AI Foundry. Per-project configuration; editable prompts; per-model max output token limits.
OpenAI, Vertex AI, Bedrock, Azure OpenAI, Voyage AI, Ollama. Used for insight/recommendation embeddings, semantic search, and /ask.
Per-project credentials, encrypted. MongoDB (AES-256-GCM default), GCP Secret Manager, AWS Secrets Manager, Azure Key Vault.
Webhook notifications on discovery completion: Slack, generic HTTP, or email — configurable per-project with templated payloads.
https://decisionbox-io.github.io/decisionbox-platformterraform/setup.sh) for GCP, AWS, or Azure with auth, resume, and destroy supportinit() + RegisterWithMeta()warehouse.RegisterMiddleware()) — wrap providers with logging, metrics, or access controlsapiserver.RegisterGlobalMiddleware()) — wrap all API requests (audit logging, custom auth)apiserver.Run() / agentserver.Run() with blank importsDecisionBox works with any queryable data. Point it at your data source and it discovers insights specific to your domain.
E-commerce — "Cart abandonment spikes 40% when shipping cost exceeds 8% of cart value. Free shipping threshold at $75 would recover an estimated 1,200 orders/month."
SaaS — "Teams that don't use the dashboard feature within 14 days of signup have 3x higher churn. An onboarding email on Day 3 highlighting dashboards could improve activation."
Fraud Detection — "Accounts created in the last 48 hours with 5+ high-value transactions account for 82% of chargebacks. Flagging this pattern would prevent $34K/month in losses."
Social Network — "Posts published between 6–8 PM with images get 3.2x more shares, but only 12% of creators post during this window. A scheduling nudge could boost platform-wide engagement."
SQL Performance — "The top 10 slowest queries consume 62% of warehouse compute. 7 of them scan full tables where a partition filter would reduce cost by ~$4,800/month."
Gaming — "Players who fail level 12 more than 3 times have 68% higher Day-7 churn. Consider adding a hint system or difficulty adjustment at this stage."
These are examples — create a domain pack for any industry and DecisionBox adapts its analysis accordingly.
Prerequisites: Docker and Docker Compose
# Clone the repository
git clone https://github.com/decisionbox-io/decisionbox-platform.git
cd decisionbox-platform
# Start MongoDB + Qdrant + API + Dashboard
docker compose up -d
# Open the dashboard
open http://localhost:3000
The dashboard will guide you through creating your first project. You'll need: - A data warehouse connection (BigQuery project ID, Redshift workgroup, Snowflake account, PostgreSQL host, Databricks workspace, or SQL Server host) - An LLM API key (Anthropic, OpenAI, or configure Vertex AI / Bedrock / Azure AI Foundry)
For detailed setup instructions, see the Installation Guide.
| Method | Use case | Guide |
|---|---|---|
| Docker Compose | Local dev, single server | Docker |
| Kubernetes (Helm) | Production on any K8s cluster | Kubernetes |
| Terraform (GCP) | Automated GKE provisioning | Terraform GCP |
| Terraform (AWS) | Automated EKS provisioning | Terraform AWS |
| Terraform (Azure) | Automated AKS provisioning | Terraform Azure |
| Setup Wizard | One-command GKE/EKS/AKS + Helm deploy | Setup Wizard |
Resources: Helm charts | Terraform modules | Helm values reference
Run locally without Docker (recommended for development):
# Start MongoDB + Qdrant only
docker compose up -d mongodb qdrant
# Terminal 1: Run the API
make dev-api
# Terminal 2: Run the Dashboard
make dev-dashboard
# Open http://localhost:3000
Build binaries:
make build # Build agent + API binaries
make build-dashboard # Build dashboard
Run tests:
make test # All tests (Go + UI)
make test-go # Go unit tests only
make test-integration # Integration tests (needs Docker)
make test-llm # LLM provider tests (needs API keys)
DecisionBox is built on a plugin architecture. You can add:
Domain packs define how the AI analyzes data for a specific industry. A domain pack includes: - Analysis areas (what to look for) - Prompt templates (how the AI reasons) - Profile schemas (what context users provide)
Domain packs are stored in MongoDB and managed from the dashboard. Built-in packs (e-commerce, social, gaming) are seeded on first startup. Create your own from the dashboard or import a portable JSON file — no code changes needed.
Add support for any LLM by implementing the llm.Provider interface (one method: Chat).
See Adding LLM Providers.
Add support for any SQL warehouse by implementing the warehouse.Provider interface.
See Adding Warehouse Providers.
Wrap warehouse providers or HTTP handlers with custom logic using the middleware registration system:
warehouse.RegisterMiddleware() wraps the warehou$ claude mcp add decisionbox-platform \
-- python -m otcore.mcp_server <graph>