Tamery:AI 驱动的开源数据库交互工具
wannabespace/conar
Tamery 是一款 AI 驱动的开源数据库工具,支持 PostgreSQL、MySQL、MSSQL、Clickhouse,Sqlite 和 MongoDB 即将支持。用户可将连接加密存储在云端,并借助 AI 编写和优化 SQL 查询,还能切换 AI 模型。
Tamery.app
Tamery is an AI-powered open-source project that simplifies database interactions. Built for PostgreSQL, MySQL, MSSQL, Clickhouse with support for other databases coming in the near future. Store your connections securely in our cloud and ask AI to help you write and optimize SQL queries.
Features
-
🔐 Secure & Open
- Open-source codebase
- Encrypted connection strings
- Password protection
-
💾 Multi-Database Support
- PostgreSQL
- MySQL
- MSSQL
- Clickhouse
- Sqlite (coming soon)
- MongoDB (coming soon)
-
🤖 AI-Powered Features
- Intelligent SQL assistance
- Ability to change AI model
- More coming soon..
Stack
- React with TypeScript
- Electron
- TailwindCSS and shadcn/ui
- Vite
- TanStack Start/Router/Query/Form/Virtual
- Arktype
- Bun
- Hono
- oRPC
- Drizzle ORM
- Better Auth
- Vercel AI SDK with OpenRouter
- Railway
- PostHog
- Resend
- ToDesktop
- Stripe
Development Setup
-
📦 Package Installation
pnpm install
-
🌐 Browser Automation (recommended)
Either CLI drives the running app for agents and manual debugging; they share one command vocabulary, so pick whichever fits the session:
npm install -g agent-browser && agent-browser install # its own Chrome window brew install --cask terminal-browser # renders in a terminal pane
Neither is a project dependency — agents call the CLI directly (
agent-browser open <url>,snapshot,click,console, or the same commands throughterminal-browser action --). Without them, any other browser automation works instead. -
🐳 Start Backing Services
Postgres and Redis must be reachable from
apps/api/.env(copy.env.example). Either point it at hosted instances, or start local ones with Docker (https://docs.docker.com/get-docker/):pnpm run docker:start
-
🗄️ Prepare Database
This will run database migrations to set up the required tables and schema.
pnpm run drizzle:migrate
-
🚀 Run the Project
This opens a package picker (all packages pre-selected — press Enter to accept) and starts the selected development servers through portless (HTTPS on
.local.tamery.appdomains):Service URL API https://api.local.tamery.app App https://app.local.tamery.app Main https://main.local.tamery.app Proxy https://proxy.local.tamery.app pnpm run dev
Pass
-ato skip the prompt and start everything. To run a subset, deselect the rest in the picker, orcdinto a single app's directory (e.g.apps/api) and runpnpm run dev.
Testing
- Unit Tests
pnpm run test
Before running E2E tests, make sure to start the test server:
pnpm run test:start
- E2E Tests
pnpm run test:e2e
Built with ❤️
来源:GitHub · github.com