Everything is a file

✓ functional

Connections, history, snippets, cards, and rules live as plain files you can back up, inspect, and keep.

Connections, query history, snippets, entity cards, keybindings, and rules all live as plain files on disk. There is no opaque application database to escape from later: back them up, diff them, or keep them in Git if that suits your workflow.

Where they are

Everything sits in one SQLLY folder under your platform's normal config and data locations:

PlatformFolder
macOS~/Library/Application Support/SQLLY/
Windows%APPDATA%\SQLLY\ and %LOCALAPPDATA%\SQLLY\
Linux~/.config/SQLLY/ and ~/.local/share/SQLLY/

A few of the files you will find there:

  • connections.json - your connections and the clients, projects, and environments they belong to, with their colors and safety policy. Never any passwords (see below).
  • keybindings.json - your keymap, editable by hand.
  • intellisense-rules.jsonc - completion rules, with comments allowed because a rules file you cannot annotate is a rules file you will not maintain.
  • entra-accounts.json, query-ai-summary.json, cli-agent.json - per-feature settings, one file each, so a reset is a delete rather than a surgery.
  • Folders for query history, AI conversations, MCP proposals and audit, and temporary result spill files.
Secrets are the exception, on purpose. Passwords and tokens go to the operating system's keychain - macOS Keychain, Windows Credential Manager, the Linux Secret Service - and the JSON stores only a reference to them. That is what makes it safe to copy, diff, or commit your connection file: the credentials are not in it.

Why this shape

  • You can leave. Your setup is readable without SQLly, and portable with cp.
  • You can review. A change to a connection or a keymap shows up as a diff you can read, which is the only kind of configuration change that survives a team.
  • You can fix it. When something is wrong, it is a file you can open - not a database that needs a support ticket.
  • Sync is not our problem. Because it is just files, any tool that syncs files works, and we do not have to be in the middle of it.