https://github.com/dorylab/dory
AI-native SQL workspace for modern data works. SQL Copilot, schema-aware editor, database chat, and operational tools in one place.
https://github.com/dorylab/dory
ai clickhouse clickhouse-ui data-studio database database-client database-gui database-management database-tools dbeaver-alternative developer-tools mysql navicat-free postgres postgresql query-editor sql sql-client sql-editor
Last synced: 7 days ago
JSON representation
AI-native SQL workspace for modern data works. SQL Copilot, schema-aware editor, database chat, and operational tools in one place.
- Host: GitHub
- URL: https://github.com/dorylab/dory
- Owner: dorylab
- License: apache-2.0
- Created: 2026-01-10T10:11:46.000Z (5 months ago)
- Default Branch: main
- Last Pushed: 2026-05-30T07:19:39.000Z (12 days ago)
- Last Synced: 2026-05-30T08:16:40.880Z (12 days ago)
- Topics: ai, clickhouse, clickhouse-ui, data-studio, database, database-client, database-gui, database-management, database-tools, dbeaver-alternative, developer-tools, mysql, navicat-free, postgres, postgresql, query-editor, sql, sql-client, sql-editor
- Language: TypeScript
- Homepage: https://getdory.dev
- Size: 58.2 MB
- Stars: 210
- Watchers: 4
- Forks: 13
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- Contributing: docs/contributing.md
- License: LICENSE
- Security: SECURITY.md
- Agents: AGENTS.md
Awesome Lists containing this project
README
Dory
**Dory is an AI-native Data Workspace for modern databases.**
> The AI-powered Data Studio you've been waiting for.
It combines intelligent SQL editing, context-aware AI assistance, conversational database exploration, and deep operational integration across modern databases into a single unified studio β helping you explore, monitor, and manage your data with the power of AI.
π Try Live Demo Β β’ Β
πΊ Install via Homebrew Β β’ Β
π Download for macOS Β β’ Β
Download for Windows Β β’ Β
π¦ Quick Start Β β’ Β
π Self-Hosting Β β’ Β
π€ Contributing Β β’ Β
β Star
**No signup required. Click "Enter as Demo" to start instantly.**
**π Live Playground: https://app.getdory.dev**

## π Quick Start
### Install on macOS with Homebrew
```bash
brew install dorylab/dory/dory
```
### Run with Docker
Make sure Docker is installed, then run:
```bash
docker run -d --name dory \
-p 3000:3000 \
-e DS_SECRET_KEY="$(openssl rand -base64 32 | tr -d '\n')" \
-e BETTER_AUTH_SECRET="$(openssl rand -hex 32)" \
-e BETTER_AUTH_URL="http://localhost:3000" \
-e DORY_AI_PROVIDER=openai \
-e DORY_AI_MODEL=gpt-4o-mini \
-e DORY_AI_API_KEY=your_api_key_here \
-e DORY_AI_URL=https://api.openai.com/v1 \
-e NEXT_PUBLIC_REQUIRE_EMAIL_VERIFICATION=false \
-e DORY_INIT_USER_EMAIL=admin@getdory.dev \
-e DORY_INIT_USER_PASSWORD=admin \
dorylab/dory:latest
```
Then:
`Username: admin@getdory.dev`
`Password: admin`
The initial administrator account is controlled by `DORY_INIT_USER_EMAIL` and `DORY_INIT_USER_PASSWORD` in `.env`.
To enable email verification, set `RESEND_API_KEY` to a valid [resend](https://resend.com) key and `EMAIL_FROM` to a validated email.
### Self-host with Docker Compose
For long-running self-hosted deployments, Docker Compose runs Dory with a dedicated PostgreSQL database and persistent volumes.
```bash
cp docker-compose.env.example .env
# Edit .env and replace all placeholder secrets/passwords.
docker compose up -d
```
For comprehensive self-hosting documentation, environment variables, and deployment guides, see the [Self-Hosting Documentation](https://www.getdory.dev/docs/deploy/self-hosting).
## β¨ Key Features
### π§ SQL Copilot
An AI assistant grounded in real database schema and current query context.
- **Ask** β Generate SQL from natural language
- **Action** β Fix or rewrite the current SQL
- **Context** β Explain query logic and field semantics
AI that understands your database β not just text completion.
---
### β¨οΈ Schema-Aware Autocomplete
- SQL completion based on real database schema
- Suggests tables, columns, functions, and aliases
- Supports multi-table joins and subqueries
---

### βοΈ Intelligent SQL Editor
- Multi-tab SQL workspace with support for multiple result sets
- Save and organize frequently used queries
- AI-powered SQL Copilot for writing, explaining, and optimizing queries
- Instant query visualization with built-in charts
---

### π¬ Database Chatbot
- Built-in conversational AI assistant
- Automatically understands connected database schema
- Ask questions directly about tables and SQL
- Quickly locate field meanings and query ideas
---
### π Agent Access via MCP
- Desktop MCP endpoint for local agent clients
- No manual token copy/paste in the desktop app
- Supports schema discovery, saved queries, read-only SQL, table previews, monitoring summaries, and analysis tools
---
### π ClickHouse Monitoring (Deep Integration)
A native observability interface designed specifically for ClickHouse.
- Real-time metrics:
- Total queries
- Slow queries
- Error queries
- Active users
- Query latency trends (P50 / P95)
- Query throughput trends (QPM)
- Multi-dimensional filtering:
- User
- Database
- Query type
- Time range
---

### π ClickHouse Privileges (Deep Integration)
Native ClickHouse user and role management UI.
- Create, edit, and delete database users
- Create roles and configure grant relationships
- Configure:
- Login username and password
- Allowed host addresses
- Granted roles and default roles
- Supports cluster-level privilege operations (On Cluster)
- No need to manually write GRANT / CREATE USER SQL
---
## π Database Support
| Database | Status |
| ---------- | ------------------- |
| ClickHouse | β
Deeply integrated |
| PostgreSQL | β
Supported |
| Neon | β
Supported |
| MySQL | β
Supported |
| MariaDB | β
Supported |
| SQLite | β
Supported |
| DuckDB | β
Supported |
| SQL Server | β
Supported |
| Oracle | β
Supported |
| Snowflake | π§ Planned |
---
## π§ Supported AI Providers
Dory is built with a pluggable AI provider architecture.
You can freely switch between different model vendors by changing environment variables β no code changes required.
Currently supported providers:
| Provider | Env `DORY_AI_PROVIDER` | Description |
| ----------------- | ---------------------- | ----------------------------------------------------- |
| OpenAI | `openai` | Default provider. Uses official OpenAI API. |
| OpenAI-Compatible | `openai-compatible` | Any service exposing an OpenAI-compatible API. |
| Anthropic | `anthropic` | Claude models via Anthropic official API. |
| Google | `google` | Gemini models via Google Generative AI API. |
| Qwen (Alibaba) | `qwen` | Qwen models via DashScope OpenAI-compatible endpoint. |
| xAI | `xai` | Grok models via xAI API. |
---
## π Desktop MCP
The Dory desktop app includes local MCP (Model Context Protocol) support, so agent clients can use your Dory connections without manually copying API tokens.
To enable it:
1. Open the Dory desktop app.
2. Go to **Settings β Agent Access**.
3. Turn on **Enable**.
4. Add the displayed local endpoint to your MCP client.
By default, desktop MCP runs at:
```text
http://127.0.0.1:3318/api/mcp
```
For Codex CLI:
```bash
codex mcp add dory --url http://127.0.0.1:3318/api/mcp
codex mcp list
```
For Claude Code:
```bash
claude mcp add --transport http dory http://127.0.0.1:3318/api/mcp
claude mcp list
```
Dory manages the desktop MCP grant automatically. The local MCP endpoint can list connections, inspect schemas, read saved queries, preview tables, run read-only SQL, and build analysis context for connected databases.
---
## πΊοΈ Roadmap
See the latest roadmap here:
---
## βοΈ Tech Stack
- Next.js + React + Tailwind
- Drizzle ORM
- Multi-model AI SDK integration
- PGLite
- Resend
- Shadcn UI
- Monaco Editor
---
## π― Who is it for?
- Data engineers
- Data analysts
- Database platform teams
- ClickHouse operations teams
---
Your data stays yours.
Except for AI requests sent through Cloudflare Gateway,
everything β connections, tabs, and saved queries β is stored locally on your device.
## π License
Apache-2.0