AI pair-DBA · runs on your own Claude or ChatGPT account

The AI pair-DBA for SSMS 22 that proves it.

An extension for SQL Server Management Studio 22 that explains errors, tunes slow T-SQL and shows what an ALTER or DROP will break before you run it — computed from your server's catalogs and DMVs, with a tamper-evident log of the queries it runs.

The Free tools work without any AI: SQL Sage Search, What's blocking now, SQL Sage History, the related-tables list after JOIN and the database health check, during the trial and after it.

AI usage not included: you need Claude Code on a paid Claude plan, a ChatGPT plan that includes the Codex CLI, or your own Anthropic API key. See pricing

No card · Signed installer · Windows x64 / Arm64 · No API key needed with Claude Code or Codex sign-in

SQL Server Management Studio 22 in the Dark theme. A query with a misspelled column failed with Msg 207, shown in the Messages tab and in a bar above the editor with an Explain error button. The SQL Sage panel on the right explains the cause, lists what it checked against the catalog and with get_schema, and offers the corrected query in a READ block with Copy, Insert, New query, Run, Format and Prove buttons. Below it, the message box shows the attached query, the chip Schema + query → Claude, the Agent mode and the Opus · Auto model button.
Works with Claude Code Codex CLI Anthropic API key SQL Server Azure SQL Database Azure SQL Managed Instance

See it in action

Captures from SSMS 22 on the AdventureWorks2022 sample database, 38 seconds, no sound: related tables after JOIN, SQL Sage Search, Explain error, What's blocking now and “Is this slower than before?”. Server, login and computer names are pixelated.

Free tools · no AI

Write T-SQL faster and see what's blocking — free, with no AI.

Three tools that work from your server's catalog and live session views, and from your own History on this computer. None of them runs your SQL or sends anything to an AI by itself, and all three stay in SQL Sage Free after the trial.

Related tables after JOIN

Type JOIN and pause. SQL Sage lists the tables related to the ones already in your statement, each with an alias and the full ON clause. When it's safe, it also gives the table in FROM a short alias. Tab or Enter inserts it, and one Ctrl+Z takes it back.

  • From foreign keys, in both directions — multi-column keys joined with AND.
  • Databases without foreign keys get suggestions from matching key column names, always marked ≈ by name and never preselected.
  • Joins you've run before show up as ↺ used N×, learned from your own SQL Sage History on this computer only — nothing is sent anywhere. They rank after foreign keys and before name matches.
  • A table name without a schema resolves the way SQL Server resolves it — your default schema, then dbo. When the list can't help, it says why in one line.
  • Type a letter and SSMS IntelliSense takes over; Esc closes the list.

What's blocking now — and is it yours?

A query hangs. Open Tools › SQL Sage Tools › What's blocking now, or the Now section of SQL Sage History. It reads the server's sessions when it opens, and again only when you press Refresh, and shows who is blocking whom.

  • An idle session holding a transaction open is shown as the head blocker, with the sessions waiting on it — easy to miss, because nothing is running. Below: open transactions over 30 s, with their age and log use.
  • Which session is probably yours, and how sure it is: Proven: this SSMS (process id, computer, program and login, as the client reports them), Inferred: matches your History, or your login on this computer from another program. No label means no evidence — it never says “not yours”.
  • Nothing runs from here. Script KILL, Open batch and the GRANT script each open a new query window; with Warn on risky F5 on (the default), F5 asks before a KILL runs. Explain with AI (licence) first shows exactly what it would send, masked by your privacy settings.
  • Honest about what it can't see. When your login can't see other sessions, it says blocking is unknown, not zero, and offers a GRANT script to review. On Azure SQL Database, running requests are visible only for your own connection, so it says blocking may be missing.

Works on SQL Server, Azure SQL Database and Azure SQL Managed Instance, with your query window's sign-in. Nothing goes to us, and nothing goes to an AI unless you click Explain with AI and send it.

Closed a tab without saving? SQL Sage History keeps it under Recently closed (unsaved) for 30 days by default (the last 50) — on this computer only, encrypted for your Windows account, with only passwords and other secrets replaced by ?. Open in new window brings the text back and never runs anything. More about SQL Sage History

Also new: Check for updates. A button in the panel's Settings and in Tools › SQL Sage Tools checks right away, and SQL Sage checks again every few hours while SSMS is open (you can turn that off). The request carries no identifier. Nothing is installed for you: you download the signed installer and run it yourself. What changed in each version

Proven & Accountable

Most AI guesses. SQL Sage proves it — and logs it.

Four deterministic tools read the real server and compute the answer. The model explains; the numbers come from your catalogs and DMVs.

Change-Impact

Before any ALTER or DROP, see exactly what breaks: dependent views, procedures and triggers, inbound foreign keys and the rows at risk.

-- example output
ALTER TABLE dbo.Customers DROP COLUMN Region;
✕ breaks  view dbo.vSalesByRegion
✕ breaks  proc dbo.usp_RegionReport
✓ none    inbound foreign keys
Details and honest scope
  • Referencing objects — views, procedures, functions, triggers, computed & CHECK/DEFAULT constraints
  • Inbound foreign keys — the child tables that point at it
  • Rows at risk — the row volume you'd lose on a DROP
  • The object's own indexes
  • Honest limit: static catalog analysis can't see dynamic (EXEC / sp_executesql) or cross-database SQL — an empty list means "nothing static found", not "nothing breaks"
  • Engine-aware: box SQL Server, Azure SQL Database, Managed Instance

Incident Mode

One click on a struggling server: the blocking chain, top waits and the most expensive queries — every claim cited to a real number from a DMV.

-- example output
blocking chain   spid 87 → 112 → 140
top wait         LCK_M_X · 62% [sys.dm_os_wait_stats]
heaviest query   spid 112 · 41 s [sys.dm_exec_requests]
Details and honest scope
  • Blocking chain — who blocks whom, and for how long
  • Top waits — each with its % share; on box SQL Server, also tempdb & log pressure
  • Most expensive in-flight queries — elapsed / CPU, with the running SQL
  • Deterministic — reads the server's DMVs directly; no provisioned cloud AI needed
  • Edition-aware: box SQL Server and Azure SQL Database (right database-scoped DMVs + VIEW DATABASE STATE on Azure)
  • Honest scope: a point-in-time snapshot of server state (DMV counters are cumulative) — reads server state only, never table data

Prove-It

Proves an AI rewrite returns the same rows as your original, with a deterministic multiset fingerprint. Pure computation — zero AI tokens.

-- example output
original  fingerprint  9f3a…c41e
rewrite   fingerprint  9f3a…c41e
✓ EQUIVALENT  same rows, same multiplicity
logical reads  18,204 → 1,377
Details and honest scope
  • One click after any rewrite — a deterministic, server-side multiset fingerprint compares the two result sets order-independently and duplicate-aware, catching lost or duplicated rows that a naive DISTINCT/EXCEPT check misses
  • Clear verdict — EQUIVALENT, DIFFERENT (with the differing rows, if you've enabled results), or an honest UNDECIDABLE when it genuinely can't be proven (a nondeterministic function like GETDATE()/NEWID(), or TOP without ORDER BY) — it says so instead of guessing
  • Logical-reads delta — so you see how much cheaper the rewrite actually is, side by side
  • Runs read-only in a rolled-back transaction, costs zero AI tokens (deterministic C#/SQL — no AI call; like every Pro check it needs a licence or the trial), on box SQL Server and Azure SQL Database, and every proof is written to the tamper-evident audit log
  • Honest scope: verified on your current data right now — not a proof for all possible data — and it compares the row multiset (order-independent), so it doesn't prove ordering

Tamper-evident audit

A hash-chained log of the queries it runs — approved, dispatched, done or failed — with an evidence export (Markdown + JSON) for a reviewer or a change ticket.

-- example log
10:42:07  approved    UPDATE dbo.Orders …
10:42:08  dispatched  new query window
10:42:09  done        1 row
Details and honest scope
  • Records executes, confirmations and cancellations — with server/database, login, classification, SQL and row count
  • Not logged: schema look-ups (table lists, column definitions), a few read-only diagnostics (wait stats, plan-cache top queries, active requests, deadlock history) and repository reads
  • Tamper-evident, not tamper-proof — a SHA-256 hash chain shows when an entry inside a day's file was changed or removed. It has no secret key: anyone who can write to your Windows profile can rebuild the chain, delete a whole day's file or drop the newest lines, and the chain will not show it
  • Evidence pack in Markdown + JSON, with a one-line integrity verdict
  • Connection names can be masked in the export
  • Honest scope: a tamper-evidence aid, not a certified or immutable compliance record

Example outputs are illustrative, not taken from a real server.

Explain error

The red error, explained by what your catalog proves.

When a query fails, SQL Sage shows the facts first: the missing column and the closest real name, the foreign key or CHECK behind a 547, the key behind a duplicate, the column size behind a truncation. Then, with a licence, the AI explains and suggests the fix.

The proven part is free. Values from your rows are never shown or sent. How Explain error works

Msg 207, Level 16 — Invalid column name 'CustmerId'.

PROVENNo column CustmerId in dbo.Orders; closest real column: dbo.Orders.CustomerId

AI · LICENCEWhy it failed and a corrected query, ready to insert

Example shown for illustration.

Two classified SQL blocks in chat: a DELETE with an amber WRITE badge and a CREATE INDEX with a red DDL badge, each showing the full SQL.

Safe by default

AI that wants to touch production asks first.

  • Catalog and DMV reads run on their own, so exploration stays fast. A query the AI writes on your own tables runs only after you agree to share results for the session; until then it is not executed and the AI sees only its column names and types.
  • DML and DDL stop for confirmation, with the exact SQL in front of you.
  • Linked servers, OPENQUERY, OPENROWSET and OPENDATASOURCE always ask — even inside a SELECT.
  • Query results never go to the model without your per-session opt-in; server and database names can be masked.
  • The AI can use only SQL Sage's tools — no shell, no file system, no web.
  • We never hold your tokens: you sign in inside Claude Code or the Codex CLI on your own machine.

Agent or Ask

You decide whether the AI may check its answer on your server.

Pick the mode next to the model, at the bottom of the chat.

  • Agent (the default) — the AI may run read-only queries and SQL Sage's tools to check its answer; writes always ask you first.
  • Ask — the AI answers only from the query you attached and the chat, and runs nothing on the server: that turn has no tools at all.
  • Ask works with Claude Code and your own Anthropic API key. It is not available with Codex, which always loads your own MCP servers, so SQL Sage can't guarantee a tool-free turn there.
  • A chip above the message box always shows what leaves your computer in this turn — for example Schema + query → Claude in Agent mode, or Query → Claude in Ask mode.
The SQL Sage panel in Ask mode, Dark theme. A system note reads: Ask mode — answers from what is attached; runs nothing on the server. Claude's answer ends by saying it can't check the index in Ask mode, but Agent mode can run get_schema to confirm. Above the message box the chip reads Query → Claude, and the mode button reads Ask.

Also included

Everything else a DBA expects in the panel.

SQL Sage History — every query you ran, searchablefree

Every query you run in SSMS is kept on this computer only, encrypted for your Windows account — newest first, searchable with Ctrl+F. Open it from View › Other Windows or Tools › SQL Sage Tools. Free, also after the trial.

  • Server, database, status (with the SQL Server error number of a failed run), duration, rows returned and the READ / WRITE / DDL class
  • Passwords in statements such as CREATE LOGIN are masked before saving; error text is redacted and query results are never stored
  • Open in new window puts the query in a new editor window — connected to the same server when your active window is — and never runs anything
  • With a licence, on one entry: Why is this slower than last time? and Prove the same rows against your editor's query. Nothing goes to the AI until you click and see exactly what will be sent; Prove uses no AI at all
  • Kept 30 days by default; pause it or switch it off any time — switching it off deletes it. What is stored
Chat in the context of your connection

The chat is locked to one server and database, shown at the top at all times. Answers know which engine, version, and database they're talking about.

Right-click any SQL: Explain · Fix · Optimize · Document

Select T-SQL in a query window and pick an action from the editor's right-click menu — or press Ctrl+Alt+Shift+E/F/O/D. The chat opens with your SQL already in context; no copy-paste.

  • Explain — a plain-language, step-by-step walkthrough
  • Fix — find the bug and return the corrected query
  • Optimize — indexing and rewrite suggestions, with reasoning
  • Document — add clear comments and a purpose summary
  • Also in the Tools menu; shortcuts shown next to each action
Slash commands

/explain, /optimize, /fix, /doc on your attached query, plus /format with zero tokens. The commands DBAs expect, on the code you're looking at.

  • /explain · /optimize · /fix · /doc — act on the query you have open
  • /querystore — top regressed and most expensive queries for this database
  • /format — deterministic local formatting, zero tokens
  • /help — the full list, in the panel
SQL block toolbar: Copy · Insert · New query · Run · Format

Every SQL block the assistant writes carries a READ / WRITE / DDL badge and one-click actions. Insert is never Run — putting text in your editor and executing it are two different buttons.

Query Store, built in

Ask for regressed queries, top consumers or a stored plan — read from Query Store by SQL Sage's own read-only tools, not guessed from the query text.

  • Regressed queries — recent window vs an earlier baseline
  • Top consumers by duration, cpu or reads, over a chosen time window
  • The stored execution plan for any query_id, incl. whether it's forced
  • Falls back to the plan cache when Query Store is off
Deep performance diagnostics

Health, backups, waits, blocking, deadlocks, indexes and plans: SQL Sage runs authored, read-only DMV queries itself and the model interprets the real numbers.

  • One-click health check — backups, failed jobs, fragmentation, stale stats, memory pressure, risky options, in one scan
  • Backup coverage & RPO risk — last full/diff/log per database, flagged
  • Wait stats — engine-aware (box SQL Server vs Azure SQL), idle waits filtered
  • Live blocking & deadlock history (system_health: victim + lock graph)
  • Missing & unused indexes — cross-checked against the indexes you already have
  • Execution plan — estimated, and actual (real vs estimated rows) only after you agree to share results; until then values in the plan are masked
Permissions & role audit

Who can access what: read-only, database-scoped, with nested role membership expanded.

  • Overview — every user and role, flagged for high privilege
  • Per principal — effective (nested) roles plus explicit grants
  • Per object — grantees, including column-level permissions
  • Works on box SQL Server and Azure SQL Database
Claude and ChatGPT in SSMS — on your own account

Use your own Claude (through Claude Code) or ChatGPT and Codex (through the Codex CLI) right inside SSMS — switch provider and model, keep your history. It runs on your own AI access: no API key is needed with Claude Code or Codex, and nothing is resold or metered by us. The model list updates itself — new Claude and ChatGPT models appear in the picker without waiting for a plugin release.

Pin to a window

Working across five servers? Pin the chat to a specific query window so context never drifts to the wrong connection.

Privacy by default

Schema metadata and your query go to the model; query results never do, unless you opt in per session. Server and database names can be masked.

Portable skills

Reusable DBA playbooks as Anthropic SKILL.md files — versioned, shareable, and interoperable with Claude Code and GitHub Copilot in SSMS. Write a tuning or audit routine once; run it anywhere.

  • Ships with deadlock-triage, blocking-triage, index-tuning, query-regression, db-health-review
  • Reads your personal ~/.claude/skills — the same folder Copilot & Claude Code use
  • Open standard SKILL.md — no lock-in; author once, reuse across machines & teams
Connect a repository — code-aware chatpreview

Connect your application's source repository so the assistant reasons about your app code alongside the database — schema, queries and the code that uses them, in one context. Opt-in, per repository. Repository access runs on the Claude channel only (for now) — a deliberate security choice, explained below.

  • Opt-in per repository — you consciously turn on access, one repo at a time
  • Native file, shell and search tools are disabled while a repo is connected. The assistant reads your repository only through SQL Sage's own read_repo_file and search_repo tools. They read the live repository folder — nothing is copied — and stay confined to it: paths outside the folder and symbolic links are refused. Disconnecting ends the access.
  • Secret files (.env, appsettings*.json, *.pem, *.key, .aws/, .ssh/, .git/ and similar) are refused, and search skips them. In other files, recognisable secret tokens — private keys, cloud access keys, provider tokens, JWTs — come back as ‹secret redacted›. A password written as plain text in an ordinary source file is not recognised, so keep secrets out of source code.
  • Claude channel only — on purpose. This fence works because on the Claude channel we can turn off the native file tools and serve the repository only through our own tools. The OpenAI Codex sandbox restricts what the process is allowed to do, not which files are read, so we don't enable repo access there rather than risk exposing your other credentials. We enable it only where we can fence off secrets this way — Codex will follow once we can do that just as safely.
  • SQL execution is unchanged — catalog and DMV reads run on their own, a query on your own tables only after you agree to share results, and writes and DDL still stop for confirmation
  • Honest scope: code-aware chat (preview) — it reasons about your code next to the database, but does not yet prove which line of code produced a given query
See what's sent — and what it costs

An egress panel shows the exact payload leaving for the model — schema and your query (plus connected-repo code when a repo is attached), never your data unless you opt in. A live token counter and a heads-up before large operations keep the cost in view.

  • Egress indicator & “what's sent to the API” panel — inspect the precise schema + query payload before it leaves; query results never go unless you opt in per session
  • Live token-usage counter — watch consumption as you chat, with a warning before large operations
  • Guided first run — an onboarding empty-state with example prompts gets you productive in seconds

Free after the trial

The editor tools stay free. Proof and AI need a licence; AI usage stays on your own account.

After the 30-day trial, SQL Sage keeps working as SQL Sage Free — the editor tools below, with zero AI (LLM) calls. AI features and the Proven & Accountable layer need a licence.

SQL Sage Free

  • F5 execution warnings
  • JOIN…ON suggestions and the related-tables list after JOIN — from foreign keys, from key names (marked ≈) or from joins you ran before (↺)
  • SQL Sage Search (Ctrl+Alt+D) — objects, columns and definition text across every database on the server
  • What's blocking now — live blocking chains and open transactions, read-only
  • Format SQL, Expand SELECT *, Qualify object names
  • Execute current statement
  • A one-click database health check (read-only, no AI)
  • Explain error — the proven part
  • SQL Sage History — the queries you run and the tabs you close without saving, on this computer only, encrypted
  • Redgate-style shortcuts that step aside when SQL Prompt is installed

Copilot answers. SQL Sage shows what an ALTER or DROP will break and proves, on your current data, that a rewrite returns the same rows — using the Claude or ChatGPT account you already have, for $39 once.

Own it once, or subscribe for the always-latest build. How it works — and its limits

AI usage not included: you need your own AI access (Claude Code on a paid Claude plan, a ChatGPT plan that includes the Codex CLI, or your own Anthropic API key) — details below.

Personal

$39 one-time

PLN 149 · GBP 29 · EUR 35*

1 seat (1 person)

Individual DBAs & consultants

Licence never expires. Includes every update through version 1.x, plus 2.0 if it ships within 12 months of your purchase.

Buy Personal

or $29/yr, always the latest version

PLN 109 · GBP 22 · EUR 25*

Subscribe — Personal

30-day trial + 14-day refund · Refund policy

Need it for a team? Team 3 (3 seats) and Team 10 (10 seats)

Team 3

$79 one-time

PLN 299 · GBP 59 · EUR 69*

3 seats (3 people)

Small teams

Licence never expires. Includes every update through version 1.x, plus 2.0 if it ships within 12 months of your purchase.

Buy Team 3

or $59/yr, always the latest version

PLN 229 · GBP 45 · EUR 52*

Subscribe — Team 3

30-day trial + 14-day refund · Refund policy

Team 10

$179 one-time

PLN 679 · GBP 135 · EUR 159*

10 seats (10 people)

Teams, priority support

Licence never expires. Includes every update through version 1.x, plus 2.0 if it ships within 12 months of your purchase.

Buy Team 10

or $129/yr, always the latest version

PLN 489 · GBP 99 · EUR 115*

Subscribe — Team 10

30-day trial + 14-day refund · Refund policy

// 30-day free trial, no card. One seat is one person, on all of their computers: laptop, jump host, VDI. Checkout is hosted by Paddle, our merchant of record. Prices are in USD; in Poland (PLN), the United Kingdom (GBP) and, marked *, these euro countries: AT BE HR CY EE FI FR DE GR IE IT LV LT LU MT NL PT SK SI ES, Paddle charges the local price shown under each plan. Depending on your location, Paddle shows the price with tax included or adds tax on top; the checkout shows the total before you pay.

What you'll pay in total

You already pay for Claude or ChatGPT
$39 once, or $29/yr — nothing else to us. AI usage stays on the plan you have (one that includes Claude Code or the Codex CLI), within its limits.
No AI plan yet, and you want Claude
$39 once, plus Claude Pro at $20 a month or $200 a year paid annually (Anthropic's pricing, read 2026-10-20). With the SQL Sage subscription instead: $29 + $200 = $229 a year.
AI is always a separate cost
We never sell or meter AI: you pay Anthropic or OpenAI under your own plan, or per use with your own Anthropic API key. SQL Sage Free needs no AI and costs nothing.

AI usage is not included in the price. SQL Sage runs on AI access you bring: Claude Code signed in with a Claude plan that includes it (Pro, Max, Team or Enterprise — the free Claude plan does not) or with an Anthropic Console account; or the Codex CLI signed in with a ChatGPT plan that includes the CLI (OpenAI's plan page, read 2026-10-20, lists it with ChatGPT Plus and Pro; check it for your plan); or your own Anthropic API key, billed by Anthropic. Claude plan details as stated by Anthropic, September 2026.

Multi-provider, your choiceClaude via Claude Code, ChatGPT via the Codex CLI, or your own Anthropic API key. Switch models without switching tools.
No extra AI bill from usAI usage is paid to Anthropic or OpenAI under your own plan or key — not to us. We never meter or resell tokens.

Copilot in SSMS is free. Here's when SQL Sage is worth it.

Both read your server: Copilot's Agent mode, generally available since SSMS 22.10.2 (2026-09-28), can query Query Store, execution plans and permission catalogs with your approval. The difference is accountability — proof before a change, and an audit trail after it.

Read the full comparison →

  • Proves the blast radius
    Dependents and rows at risk, computed from the catalogs before ALTER or DROP.
  • Proves rewrites are equivalent
    Same rows, checked by computation rather than a second opinion from the model.
  • Keeps a tamper-evident log
    The queries it ran, when, and whether you approved them.
  • Your model, your account
    Claude via Claude Code, ChatGPT via the Codex CLI, or an Anthropic API key — no GitHub account.
GitHub Copilot in SSMS as documented by Microsoft and GitHub, as of 2026-10-20. Each Copilot cell links its source; “not documented” means we found no such feature in those docs, not a claim that it can never exist.
What you getGitHub Copilot in SSMSSQL Sage
Reads your server: Query Store, plans, missing indexes, permissionsYes — Agent mode, generally available since SSMS 22.10.2, with your approval for each query. SSMS release notes, read 2026-10-20Yes — purpose-built read-only tools; the values come from the server
Writes and DDL wait for your approvalYes — Agent mode is READ_ONLY by default and asks before each query or command. Microsoft Learn, read 2026-10-20Yes — a ScriptDom gate: SELECT runs, DML and DDL show the exact SQL first
Deterministic blast radius before ALTER / DROPNot documented. Microsoft Learn, read 2026-10-20Yes — Change-Impact: dependents, inbound foreign keys, rows at risk, indexes
Proof that a rewrite returns the same rowsNot documented. Microsoft Learn, read 2026-10-20Yes — Prove-It: deterministic, zero AI tokens
Tamper-evident log and evidence exportNot documented; Microsoft lists chat export as not supported. Microsoft Learn, read 2026-10-20Yes — hash-chained log, Markdown + JSON evidence pack
Account and modelsA GitHub account with Copilot; a curated model picker (GPT, Claude, Gemini) or your own API key — not on Copilot Business or Enterprise. Microsoft Learn, read 2026-10-20Your own Claude (Claude Code) or ChatGPT / Codex (Codex CLI) sign-in, or an Anthropic API key — no GitHub account
Inline completionsYes — since SSMS 22.2. Microsoft Learn, read 2026-10-20On request (Alt+.) through Claude Code or Codex; as you type with your own Anthropic API key
PriceCopilot Free $0 (50 chat requests and 2,000 completions a month); Copilot Pro $10/month; Copilot Business $19 per seat per month. AI usage is included in each plan, up to its allowance. GitHub Docs and GitHub Copilot plans, read 2026-10-2030-day trial, then SQL Sage Free; AI features $39 once or $29/yr (AI usage not included)

Questions DBAs ask first

SQL Sage at a glance
What it isA downloadable extension (VSIX add-in) you install inside SSMS — not a web app, not a standalone tool
HostSQL Server Management Studio 22 (Windows 10 / 11)
Interface languageEnglish
Sign-inIn Claude Code or the Codex CLI, with your own Claude or ChatGPT account; or your own Anthropic API key
AI providersAnthropic Claude and OpenAI Codex / ChatGPT
VendorLumaSoft — independent; not affiliated with Microsoft, GitHub, Anthropic, OpenAI, Redgate, Devart or DBeaver
Is SQL Sage a website or an extension I install?

SQL Sage is an extension (add-in) you install inside SQL Server Management Studio 22 on Windows. It runs as part of SSMS on your own machine. It is not a website, not an online SQL editor, and not a standalone app. It reaches the AI through Claude Code or the Codex CLI installed on the same machine, or your own Anthropic API key — it does not run in the cloud.

Now that Copilot in SSMS can read the database too, what makes SQL Sage different?

SQL Sage doesn't just read your database — it proves what a change breaks and logs what it runs. Before any ALTER or DROP it deterministically reports the blast radius — dependent views, procedures, functions, triggers and constraints, inbound foreign keys, rows at risk and the object's indexes — read straight from the system catalogs, not guessed. The queries it runs or blocks are written to a tamper-evident, hash-chained local audit log (on by default; it can be turned off) that you can export as an evidence pack (Markdown + JSON) of what ran against production and who approved it; schema look-ups and a few read-only diagnostics are not logged. The honest limit: static catalog analysis cannot see dynamic (EXEC / sp_executesql) or cross-database SQL, and SQL Sage states that plainly rather than guessing around it. The audit log is a tamper-evidence aid, not a certified or immutable compliance record.

What happens after the 30-day trial?

SQL Sage keeps working as SQL Sage Free: F5 execution warnings, JOIN…ON suggestions and the related-tables list after JOIN, SQL Sage Search across every database on the server, What's blocking now (live blocking and open transactions), Format SQL, Expand SELECT *, Qualify object names, Execute current statement, a one-click database health check (read-only), the proven part of Explain error and SQL Sage History, the local query history with the tabs you closed without saving — with zero AI calls. AI features and the Proven & Accountable layer need a licence.

How do I see what is blocking my query right now?

Open Tools › SQL Sage Tools › What's blocking now — free, with no AI. It reads the server's sessions and shows the blocking chain, including an idle session that left a transaction open, the open transactions older than 30 seconds, and which session is probably yours, with how sure it is. Nothing runs from there: KILL, GRANT and the blocker's SQL open as scripts in a new query window, and with Warn on risky F5 on (the default) F5 asks before a KILL runs. When your login can't see other sessions, it says blocking is unknown instead of showing an empty list; on Azure SQL Database, running requests are visible only for your own connection, so it says blocking may be missing.

Does SQL Sage work with Claude, ChatGPT, or Codex?

Yes. SQL Sage drives the AI access you already have: your own Claude through Claude Code, or ChatGPT and Codex through the Codex CLI. You sign in inside those tools with your own account — SQL Sage has no Claude or ChatGPT login of its own — and on that path no API key is needed; your own Anthropic API key is an optional alternative. No GitHub or Microsoft account is needed. It's an independent extension by LumaSoft, not affiliated with Anthropic, OpenAI, or Microsoft.

What AI access do I need?

SQL Sage does not include AI usage — it runs on access you bring. Choose one: Claude Code signed in with a Claude plan that includes it (Pro, Max, Team or Enterprise; the free Claude plan does not include Claude Code) or with an Anthropic Console account; the Codex CLI signed in with a ChatGPT plan that includes the CLI (OpenAI's plan page, read 2026-10-20, lists it with ChatGPT Plus and Pro, with plan-dependent usage limits); or your own Anthropic API key, billed by Anthropic. AI inline suggestions in the editor work on request (Alt+.) through the same Claude Code or Codex sign-in; automatic as-you-type AI suggestions need your own Anthropic API key and are used only when neither Claude Code nor Codex is installed. Claude plan details as stated by Anthropic, September 2026.

Do I need a GitHub account or a Copilot license?

No. SQL Sage works through Claude Code or the Codex CLI, where you sign in with your own Claude or ChatGPT account — or you use your own Anthropic API key.

Do you resell tokens or add a markup?

No. The AI runs on the account you already have. We never meter or resell usage.

Can it run destructive SQL on my database?

Not without you. Reads of system catalogs and DMVs run on their own; a read of your own tables runs only after you agree to share results for the session (until then the AI sees only its column names and types); writes and DDL stop for a confirmation dialog showing the exact SQL. Classification happens before execution.

Does my data get sent to the AI?

Schema metadata and the query text do. Query results never leave your machine unless you opt in per session. Names can be masked.

Why does Windows warn me when I run the installer?

The installer is validly Authenticode-signed and timestamped by LUMA SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ — you'll see exactly that publisher name in the SmartScreen dialog after clicking More info. Windows still shows an "unrecognized app" notice because the file and publisher are newly published and haven't accrued download reputation yet; Microsoft builds that up over several weeks and hundreds of clean installs, and since 2024 even EV certificates no longer skip this step — there is no paid shortcut. So it's a reputation stage, not a malware detection. Before you run it, click More info and check that the publisher reads LUMA SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ, and compare the file's SHA-256 with the one we publish on the download page and in version.json (Get-FileHash SqlSageSetup.exe -Algorithm SHA256). If both match, Run anyway starts the installer; if either does not, do not run it.

Which SSMS versions are supported?

SSMS 22. SSMS 21 support is under evaluation.

Does it work with Azure SQL?

Yes. SQL Sage is edition-aware across SQL Server, Azure SQL Database and Azure SQL Managed Instance, and degrades gracefully where a platform lacks a DMV. Microsoft Entra sign-ins are mapped to the matching connection type, but not every Entra variant has been verified on SSMS 22 yet — if yours does not connect, tell us.

Does it do inline completions like Copilot?

Yes, in two ways — both off until you turn on Inline suggestions in the panel's Settings, and both need a licence or the trial. On request: press Alt+. in the query editor and SQL Sage asks your signed-in Claude Code or Codex for a suggestion, on your own Claude or ChatGPT plan — no separate API key. Automatically as you type: only with your own Anthropic API key, and only when neither Claude Code nor Codex is installed on the machine.

Is it affiliated with Microsoft, Anthropic, or OpenAI?

No. SQL Sage is an independent extension by LumaSoft.

How much does it cost?

Your choice. Own it once — Personal $39, Team 3 $79, Team 10 $179, with every update through version 1.x included (plus 2.0 if it ships within 12 months of your purchase). Or subscribe for the always-latest build — Personal $29/yr, Team 3 $59/yr, Team 10 $129/yr. One seat is one person, on all of their computers: laptop, jump host, VDI. Personal has 1 seat, Team 3 has 3 and Team 10 has 10. Prices are in USD; in Poland, Paddle (our merchant of record) charges PLN 149 / 299 / 679 one-time or PLN 109 / 229 / 489 per year, and local prices also apply in the UK and 20 euro-area countries (see Pricing). Every install starts with a 30-day free trial, all features, no credit card; after it, SQL Sage Free keeps the editor tools working. You bring your own Claude or ChatGPT account; we never meter or resell usage.

What language is SQL Sage in?

SQL Sage is an English-first product: the extension's interface and documentation are in English. This marketing website is additionally available in Polish, German, Spanish and French, but the product itself is English.

Install in two minutes.

Close SSMS, run the signed installer, open the SQL Sage panel. 30 days of everything, then SQL Sage Free stays.

Download SqlSageSetup.exe

Requires SSMS 22 (not 21 or older) · admin rights · Get SSMS 22 from Microsoft. Have SSMS 22? Check Help › About in SSMS. The AI features also need a Claude or ChatGPT plan that includes the CLI, or an Anthropic API key.

Windows · x64 or Arm64 · ~ a few MB · v1.0.0 · 30-day trial starts with your first AI answer (day 14 at the latest)

AI usage not included: SQL Sage needs your own AI access (Claude Code on a paid Claude plan, a ChatGPT plan that includes the Codex CLI, or your own Anthropic API key). See pricing

By downloading you accept the Terms.

Signed by LUMA sp. z o.o. Your browser may flag a new installer as “not commonly downloaded”. Before you keep and run it, you can check the publisher and the SHA-256 — see below.

For your security team: what SQL Sage installs, its signature, silent install, network endpoints and data at rest →

What the installer does

Copies SQL Sage into the SSMS 22 Extensions folder under Program Files and runs “Ssms.exe /updateconfiguration” so SSMS registers it. It needs admin rights (UAC) and adds an uninstall entry to Windows; it bundles no other software and changes no browser or system settings.

Publisher and checksum

Authenticode-signed by LUMA SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ (LUMA sp. z o.o., Certum certificate). The SHA-256 below is also published in version.json.

The SHA-256 we publish for this exact build (v1.0.0) — the same value as in version.json: 3FCE53B3C9CAD80F37AB1B4D689CF18918434FF4D2C13B69AF7D23F08A5E1595

In PowerShell: Get-FileHash SqlSageSetup.exe -Algorithm SHA256

Uninstall any time

Windows Settings → Apps → Installed apps → SQL Sage for SSMS 22 → Uninstall. Your settings and audit log stay under %LOCALAPPDATA%\SqlSage until you delete them. Step-by-step guide

Windows SmartScreen? Here's what to expect.

When you run the installer, Windows may show “Windows protected your PC.” SmartScreen shows this for a newly published app that has not built up download history yet; it is not a malware verdict. The installer is Authenticode-signed, and the dialog tells you by whom — check that before you decide.

Before you run it, check two things:

  1. Click More info in the “Windows protected your PC” dialog. It shows App: SqlSageSetup.exe and Publisher: — which must read LUMA SPÓŁKA Z OGRANICZONĄ ODPOWIEDZIALNOŚCIĄ, the full legal name of LUMA sp. z o.o. If it says Unknown publisher or any other name, do not run the file.
  2. Compare the file's SHA-256 with the hash above, which we also publish in version.json. Only if the publisher and the hash both match is it our installer; Run anyway then starts it.

Requirements

  • SQL Server Management Studio 22 (Windows, x64 or Arm64)
  • For the AI features only: Claude Code or the Codex CLI installed and signed in — that's how SQL Sage reaches the AI. SQL Sage Free needs neither. Links below.
  • Admin rights for install (writes to Program Files, standard for SSMS extensions)

Steps

  1. Close SSMS.
  2. Run SqlSageSetup.exe and approve the UAC prompt.
  3. Reopen SSMS — the SQL Sage panel opens automatically.
  4. In the panel's status bar choose Sign in: SQL Sage opens Claude Code or the Codex CLI in a console, and you sign in there with your own account. Then start chatting.