---
title: SQLsaber
description: Ask questions about your data in plain English. SQLsaber writes SQL queries, executes them, and explains the results.
template: splash
hero:
  tagline: Ask questions in plain English. SQLsaber reads your schema, writes SQL, runs it securely, and explains the results.
  image:
    alt: "SQLsaber terminal demo showing natural language query"
    file: ../../assets/sqlsaber.gif
  actions:
    - text: Get started
      link: /installation/
      icon: right-arrow
    - text: View on GitHub
      link: https://github.com/SarthakJariwala/sqlsaber
      icon: external
      variant: minimal
---

import {
  LinkButton,
  Icon,
  Code,
  Card,
  CardGrid,
} from "@astrojs/starlight/components";

<script
  src="https://asciinema.org/a/746773.js"
  id="asciicast-746773"
  async="true"
></script>

<section class="mx-auto max-w-screen-lg px-4 sm:px-6 lg:px-8 py-8">
  <h2 class="font-sans text-3xl md:text-4xl tracking-normal text-center mb-8">
    What SQLsaber does
  </h2>
  <CardGrid>
    <Card title="Schema-aware queries" icon="magnifier">
      <p class="text-lg text-muted-foreground">
        <strong>Automatically introspects</strong> your database structure. No
        manual schema documentation needed.
      </p>
    </Card>
    <Card title="Safe execution" icon="approve-check">
      <p class="text-lg text-muted-foreground">
        <strong>Read-only by default.</strong> SQLsaber won't modify, delete, or
        alter your data.
      </p>
    </Card>
    <Card title="Context memory" icon="document">
      <p class="text-lg text-muted-foreground">
        Teach it your database quirks: <code>"dates are Unix timestamps"</code>,{" "}
        <code>"user_id references accounts.id"</code>.
      </p>
    </Card>
    <Card title="Conversation threads" icon="comment-alt">
      <p class="text-lg text-muted-foreground">
        Resume past conversations. Ask follow-up questions without repeating
        context.
      </p>
    </Card>
  </CardGrid>
</section>

<section class="mx-auto max-w-screen-lg px-4 sm:px-6 lg:px-8 py-8">
  <h2 class="font-sans text-3xl md:text-4xl tracking-normal text-center mb-8">
    Works with your stack
  </h2>
  <div class="max-w-2xl mx-auto">
    <ul class="space-y-3">
      <li class="flex items-center gap-3">
        <Icon name="seti:db" />
        <span>
          <strong>Databases:</strong> PostgreSQL, MySQL, SQLite, DuckDB, CSV
          files
        </span>
      </li>
      <li class="flex items-center gap-3">
        <Icon name="sun" />
        <span>
          <strong>AI providers:</strong> Anthropic, OpenAI, Google, and others
        </span>
      </li>
      <li class="flex items-center gap-3">
        <Icon name="seti:shell" />
        <span>
          <strong>Interface:</strong> Interactive REPL or single-shot CLI
          queries
        </span>
      </li>
      <li class="flex items-center gap-3">
        <Icon name="forward-slash" />
        <span>
          <strong>Composable:</strong> Pipe queries, redirect output, use in
          scripts
        </span>
      </li>
    </ul>
  </div>
</section>

<section class="mx-auto max-w-screen-lg px-4 sm:px-6 lg:px-8 py-12 text-center">
  <h2 class="font-sans text-3xl md:text-4xl tracking-normal">
    Get started in 2 commands
  </h2>
  <div class="mt-8 text-left mx-auto max-w-3xl">
    <Code
      code={`# Install
uv tool install sqlsaber

# Run (walks you through setup on first launch)

saber`}
lang="bash"
/>

  </div>
  <div class="mt-8 flex flex-wrap items-center justify-center gap-4">
    <LinkButton href="/installation/">Installation guide</LinkButton>
    <LinkButton href="/guides/getting-started/" variant="secondary">
      Quick start
    </LinkButton>
  </div>
</section>
