Now with AI · Free & Open

The PostgreSQL client that speaks your language.

Postgly is a modern, local-first desktop client for PostgreSQL — with a built-in natural-language SQL assistant. Describe what you want, get a safe, schema-aware query back. You decide when it runs.

  • ✓ Local-first — your data never leaves your machine
  • ✓ Bring your own LLM (OpenAI, Ollama, Groq, …)
  • ✓ Destructive-query guard with EXPLAIN row estimate
  • ✓ macOS · Windows · Linux
Works with PostgreSQL 12+ OpenAI Ollama Groq Together Any OpenAI-compatible API
Natural-Language SQL

Ask your database. Get real SQL back.

Postgly's agent inspects your live schema with real tool calls (list_tables, describe_table, list_relations, sample_rows) before answering — no hallucinated tables, no fake columns. Joins are planned for you from real foreign keys.

Ask in any language

"all users registered last month"

SELECT * FROM public.users
WHERE created_at >= date_trunc('month', now() - interval '1 month')
  AND created_at < date_trunc('month', now());
Joins, planned from real FKs

"top 5 customers by revenue this year, with their country and last order date"

SELECT c.name, co.name AS country,
       SUM(oi.quantity * oi.unit_price) AS revenue,
       MAX(o.created_at) AS last_order
FROM customers c
JOIN countries co  ON co.id = c.country_id
JOIN orders o      ON o.customer_id = c.id
JOIN order_items oi ON oi.order_id = o.id
WHERE o.created_at >= date_trunc('year', now())
  AND o.status = 'paid'
GROUP BY c.name, co.name
ORDER BY revenue DESC
LIMIT 5;
🧠

Bring your own LLM

Any OpenAI-compatible endpoint — OpenAI, Ollama (local), Groq, Together, custom proxies. Your API key lives in the OS keyring.

🛡

Safe by default

INSERT / UPDATE / DELETE / DROP trigger a confirmation modal with the planner's row estimate via EXPLAIN. Toggleable.

🔁

Refine, retry, recall

Keep context across turns with Refine, browse session history, see live token usage. Nothing runs until you hit play.

🤝

Honest about failure

When the model can't answer, it returns need_info or not_found with reasons and clickable fuzzy table matches.

Everything you'd expect — and more

A full-featured Postgres client. No bloat.

🗂

Multiple connections, multiple tabs

Manage every database from one window. Each connection lives in its own tab — switch instantly with Cmd/Ctrl+1–9.

🌳

Schema explorer

Browse schemas, tables and views. Inspect column types, indexes, PKs and FKs at a glance.

📊

Records grid

Quick-filter, sort by any column, paginated browsing. JSON / JSONB columns open in a dedicated viewer.

✏️

Edit · Insert · Delete

Row-level edits inline. Insert and delete with confirmation. JSON-friendly editors built in.

💻

Syntax-highlighted SQL editor

Run only the selected statement. Per-session command history. Cmd/Ctrl+Enter to execute.

🔐

Local & private

Connection passwords and LLM API keys live in the OS keyring — never on disk in plain text. No telemetry.

🌓

Light & dark themes

Follows your system by default. Crisp typography on retina, designed for long sessions.

Native & fast

Built with Tauri 2 + Rust. A tiny installer, snappy startup, and minimal memory footprint.

A peek inside

Designed for the database work you actually do.

Postgly agent elicitation
Conversation component to manage your database.
Postgly natural-language SQL bar above the editor
The ✨ bar above the SQL editor — ask, review, run.
Destructive-query confirmation modal with row estimate
Destructive operations stop for a row-estimate confirmation.
Postgly LLM settings panel
Plug in any OpenAI-compatible endpoint in Settings → LLM Config.
Download

Get Postgly. It's free.

One command installs Postgly. Installers are unsigned — the scripts download the latest release and clear the macOS quarantine attribute for you.

macOS

Apple Silicon & Intel · auto-detects your CPU

curl -fsSL https://raw.githubusercontent.com/alissonpelizaro/postgly/main/scripts/install.sh | bash
Or download the .dmg manually

Direct downloads:

Drag Postgly.app into /Applications, then clear the quarantine attribute (the bundle is unsigned, so macOS will say "Postgly is damaged" until you do this):

xattr -cr /Applications/Postgly.app

Windows

Windows 10 / 11 · x64 · run in PowerShell

irm https://raw.githubusercontent.com/alissonpelizaro/postgly/main/scripts/install.ps1 | iex
Or download the installer manually

Direct downloads:

SmartScreen may show "Windows protected your PC" — click More info → Run anyway.

Linux

x86_64 · installs AppImage to ~/.local/bin

curl -fsSL https://raw.githubusercontent.com/alissonpelizaro/postgly/main/scripts/install.sh | bash
Or download the package manually

Direct downloads:

AppImage

chmod +x Postgly-linux-x86_64.AppImage
./Postgly-linux-x86_64.AppImage

Debian / Ubuntu

sudo dpkg -i Postgly-linux-amd64.deb
sudo apt-get install -f

All builds available on the Releases page.

FAQ

Answers, before you ask.

Is Postgly free?

Yes. Postgly is free to download and use. The source is published on GitHub.

Does Postgly send my data anywhere?

No. Postgly is local-first — connection metadata is stored in your app config folder, and passwords + LLM API keys live in the OS keyring. The only outbound traffic is whatever LLM endpoint you configure for the AI assistant.

Do I need an OpenAI account to use the AI assistant?

No. The assistant talks to any OpenAI-compatible endpoint. You can point it at a local Ollama install and run everything offline, or use OpenAI, Groq, Together, or a custom proxy.

Can the AI assistant accidentally drop my tables?

No. Destructive statements (INSERT, UPDATE, DELETE, DROP, TRUNCATE, ALTER, CREATE) are intercepted before execution. You see the SQL, a row-estimate via EXPLAIN, and must confirm. Nothing runs until you press play.

Which databases does Postgly support?

PostgreSQL today. The backend is engine-agnostic — there's a single DatabaseDriver trait — so MySQL and SQLite are natural next steps.

Why does macOS / Windows warn me on first launch?

The installers aren't yet signed/notarized. The recommended install scripts handle this for you — on macOS they run xattr -cr /Applications/Postgly.app automatically, and on Windows they strip the Mark of the Web. If you installed manually instead, run xattr -cr /Applications/Postgly.app yourself, or on Windows click More info → Run anyway in SmartScreen. Code signing is planned.

Ship queries faster. Start with Postgly.

Open-source. Local-first. AI-powered when you want it.