One app for all your databases. Connect to BigQuery, PostgreSQL, MySQL, SQLite, and MongoDB from a single native desktop app. Browse schemas, write queries, visualize results, and let AI help you explore your data.
Download for macOS · Download for Windows · Download for Linux · Build from source
Most teams juggle multiple database tools — pgAdmin for Postgres, BigQuery console in the browser, MongoDB Compass, separate SQL editors. Each with different shortcuts, different workflows, different limitations.
Warehouse UI replaces all of them with one app that:
- Connects to any database you use — no switching between tools
- Shows you what a query will cost before you run it (BigQuery dry-run)
- Has an AI assistant that actually understands your schema and codebase
- Runs natively on your desktop — not a slow Electron wrapper or browser tab
- Keeps your credentials encrypted and your data local
Run queries and instantly visualize results as bar, line, or pie charts.
Column types, row counts, execution timing — all at a glance.
- 5 databases, one app — BigQuery, PostgreSQL, MySQL, SQLite, MongoDB
- SSH tunneling — Connect through bastion hosts with key auth, ProxyJump, auto-resolved ~/.ssh/config
- Schema browser — Tree view with databases, tables, columns, types, and row counts
- Auto-detect connections — Scans .env files and Docker Compose, one-click Test & Add
- Monaco editor — Syntax highlighting, schema-aware autocomplete, multi-tab, formatting
- Cost projection — Dry-run on BigQuery to see estimated cost, bytes, and referenced tables before execution
- Query explain — Visual execution plan tree (PostgreSQL, MySQL, SQLite)
- SQL hints — Static analyzer catches SELECT *, missing LIMIT, leading wildcards, implicit cross joins — no AI needed
- MongoDB shell queries — find, aggregate, countDocuments, distinct with automatic document-to-table flattening
- Chart panel — Bar, line, and pie charts from query results with auto-detected axes
- Virtual scrolling — Handles 10k+ rows without lag
- Inline cell editing — Double-click cells to generate UPDATE queries
- Data diff — Compare two query results side-by-side with color-coded changes
- Export — CSV, JSON, and Excel (.xlsx) with native file dialogs
- Pluggable LLM — OpenAI, Anthropic, Ollama, or any local model (LM Studio, vLLM, llama.cpp)
- Schema-aware — Sees your tables, columns, current SQL, query results, and errors
- Agentic tool-use — AI actively searches your codebase, executes SQL, and analyzes execution plans during conversations
- Deep codebase context — Link local repos and the AI loads your models, services, and business logic to write the right query
- Query optimizer — One-click iterative optimization verified by dry-run
- Multi-chat with memory — Persistent conversations per connection with auto-generated titles
- Auto-discovery — One-click scan of all tables + AI-generated sample queries to get started fast
- Encrypted credentials — API keys and passwords are AES-256-GCM encrypted at rest
- Local-first — No data leaves your machine unless you configure a cloud AI provider
- Validated keys — API keys tested before saving, never stored in plaintext
| Platform | Download |
|---|---|
| macOS (Intel + Apple Silicon) | warehouse-ui-macos-universal.dmg |
| Windows (64-bit) | warehouse-ui-windows-amd64-installer.exe |
| Linux (64-bit) | warehouse-ui-linux-amd64.tar.gz |
- Install and launch
- Add a database connection
- Click the gear icon in the AI panel to configure your AI provider (optional)
Prerequisites: Go 1.22+, Wails CLI, Node.js 18+
git clone https://github.com/olegnazarov23/warehouse-ui.git
cd warehouse-ui
cd frontend && npm install && cd ..
# Dev mode with hot reload
wails dev
# Production build
wails build
./build/bin/warehouse-uiConfigure in-app via the gear icon — no config files needed.
| Provider | Models | Setup |
|---|---|---|
| OpenAI | GPT-4o, o3, GPT-5 | API key |
| Anthropic | Claude Sonnet 4, Opus 4 | API key |
| Ollama | Llama 3, Qwen, DeepSeek, etc. | Local endpoint |
| Local (LM Studio, vLLM, llama.cpp) | Any model | Custom endpoint URL |
The AI sees your connected schema, current editor state, query results, and linked codebase. Link a local code repository and the AI loads your full source files — models, services, controllers — to understand your business logic and write accurate queries.
| Database | Cost Estimate | SSH Tunnel | Notes |
|---|---|---|---|
| BigQuery | $5/TB dry-run | — | Service account JSON, referenced tables |
| PostgreSQL | — | Yes | EXPLAIN row estimates, SSL |
| MySQL | — | Yes | EXPLAIN row estimates, SSL |
| SQLite | — | — | Pure Go, no CGO needed |
| MongoDB | — | Yes | Shell-style queries, document flattening |
| ClickHouse | Planned | — | Coming soon |
Warehouse UI also works as a headless CLI tool for scripting, automation, and AI agents.
# Connect to a database
warehouse-ui connect --url "postgres://user:pass@localhost:5432/mydb"
warehouse-ui connect --type sqlite --database ./data.db
# Or skip connect entirely with DATABASE_URL
export DATABASE_URL="postgres://user:pass@localhost:5432/mydb"
warehouse-ui query "SELECT * FROM users LIMIT 10"
# Run queries (output is JSON by default)
warehouse-ui query "SELECT * FROM users LIMIT 10"
warehouse-ui query --file report.sql --limit 1000
warehouse-ui query --format table "SELECT * FROM users"
# Explore schema
warehouse-ui schema list-tables --database mydb
warehouse-ui schema describe users --database mydb
# Cost estimation (BigQuery)
warehouse-ui dry-run "SELECT * FROM events WHERE date > '2024-01-01'"
# AI-powered natural language to SQL
export OPENAI_API_KEY="sk-..."
warehouse-ui ai "top 10 customers by revenue" --execute
# Manage connections & history
warehouse-ui connections # list saved connections
warehouse-ui history --limit 10 # recent query history
warehouse-ui status # current connection info
warehouse-ui disconnectAll commands output JSON to stdout by default. Add --format table for human-readable output. Connection state persists between invocations.
Warehouse UI includes a built-in MCP server so AI tools can query your databases directly.
Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json):
{
"mcpServers": {
"warehouse-ui": {
"command": "/path/to/warehouse-ui",
"args": ["mcp"],
"env": {
"DATABASE_URL": "postgres://user:pass@localhost:5432/mydb"
}
}
}
}The MCP server exposes 10 tools: connect, disconnect, status, execute_query, list_databases, list_tables, describe_table, dry_run, list_connections, and query_history.
Warehouse UI is available as an OpenClaw skill so AI agents can query your databases:
clawhub install warehouse-uiGo (Wails v2) Svelte 5 + TailwindCSS 4
┌─────────────────┐ ┌─────────────────────────┐
│ app.go │◄───►│ App.svelte │
│ ├─ driver/ │ │ ├─ ConnectionPage │
│ │ ├─ bigquery │ │ ├─ Shell (3-panel) │
│ │ ├─ postgres │ │ │ ├─ Sidebar │
│ │ ├─ mysql │ │ │ │ ├─ SchemaTree │
│ │ ├─ mongodb │ │ │ │ ├─ SavedQueries │
│ │ └─ sqlite │ │ │ │ ├─ History │
│ ├─ tunnel/ │ │ │ │ └─ Templates │
│ │ └─ ssh │ │ │ ├─ QueryEditor │
│ ├─ store/ │ │ │ ├─ ResultsPanel │
│ │ └─ sqlite │ │ │ └─ DataGrid │
│ └─ ai/ │ │ └─ AiPanel │
│ ├─ openai │ └─────────────────────────┘
│ ├─ anthropic│
│ └─ ollama │
└─────────────────┘
│ │
└──── Wails Bindings ──────┘
Go backend handles database connections, query execution, AI, code scanning, and export. Every public method on the App struct is available to the frontend via Wails bindings.
Svelte frontend is a 3-panel layout: schema sidebar, Monaco editor + results, and AI chat. All communication goes through generated Wails JS bindings.
Embedded SQLite (pure Go, no CGO) stores connections, history, saved queries, AI conversations, and settings. All sensitive data is encrypted.
- Fork the repository
- Create your feature branch (
git checkout -b feature/amazing-feature) - Commit your changes
- Push and open a Pull Request
MIT


