Skip to content

Configuration Reference

This page lists every configurable setting in SoftDB, its default value, and what it does. Settings are changed through the Settings panel and stored locally in SoftDB’s SQLite database.

SettingKeyDefaultDescription
Languagelanguage"en"UI language. Options: "en" (English), "vi" (Vietnamese).
Auto-connectautoConnectfalseAutomatically reconnect to the last-used connection on startup.
Confirm dangerous operationsconfirmDangeroustrueShow a confirmation dialog before running DROP, TRUNCATE, and similar destructive statements.
Max historymaxHistory500Maximum number of query history entries stored per connection. Older entries are trimmed automatically.
SettingKeyDefaultDescription
Themetheme"dark"Active UI theme. The value is the theme ID string (e.g., "dark", "light").
Font sizefontSize13Base font size in pixels for the SQL editor and data grid. Range: 10–24.
Row densityrowDensity"normal"Row height in the data grid. Options: "compact", "normal", "comfortable".
SettingKeyDefaultDescription
Tab sizetabSize2Number of spaces inserted when you press Tab in the SQL editor. Options: 2 or 4.
Word wrapwordWrapfalseWrap long lines in the editor instead of scrolling horizontally.
Line numberslineNumberstrueShow line numbers in the editor gutter.
Auto-uppercaseautoUppercasefalseAutomatically convert SQL keywords to uppercase as you type (selectSELECT).
SettingKeyDefaultDescription
Query timeoutqueryTimeout30Maximum seconds to wait for a query to complete before cancelling. Minimum: 5, maximum: 600.
Default limitdefaultLimit100Row count used when running a SELECT without an explicit LIMIT. Range: 10–10,000.
Confirm mutationsconfirmMutationsfalseShow a confirmation dialog before executing INSERT, UPDATE, or DELETE statements.
Auto-limitautoLimitfalseAutomatically append LIMIT <defaultLimit> to SELECT statements that don’t already have one.
Warn on query riskswarnQueryRiskstrueShow a warning banner when SoftDB detects potentially dangerous query patterns (e.g., DELETE without WHERE).
Warn on limited analysiswarnLimitedQueryAnalysistrueShow a notice when SoftDB’s static analysis can’t fully inspect a query (e.g., complex CTEs).
SettingKeyDefaultDescription
Connection timeoutconnectionTimeout15Seconds to wait when establishing a new database connection before giving up. Range: 3–120.
SettingKeyDefaultDescription
NULL displaynullDisplay"badge"How NULL values appear in the data grid. Options: "badge" (grey pill), "italic" (italic text), "dash" (em dash).
Date formatdateFormat"iso"How date and timestamp columns are rendered. Options: "iso" (ISO 8601), "us" (MM/DD/YYYY), "eu" (DD/MM/YYYY), "relative" (e.g., “2 hours ago”).
Export formatexportFormat"csv"Default file format when exporting query results. Options: "csv", "json", "tsv".
CSV delimitercsvDelimiter","Character used to separate fields in CSV exports. Single character. Common alternatives: ";" (European locales), "\t" (tab-separated).
SettingKeyDefaultDescription
AI provideraiProvider"openai"AI backend for the AI Assistant. Currently supports "openai".
AI API keyaiApiKey""OpenAI API key. Leave empty when using OAuth login (recommended).
AI base URLaiBaseUrl""Custom API base URL. Useful for OpenAI-compatible proxies.
AI modelaiModel"gpt-5.3-codex"Model identifier to use for AI chat. Must be a valid model name for the selected provider.

SoftDB stores all settings as a single JSON blob in the settings table of its local SQLite database. The database lives at:

  • macOS: ~/Library/Application Support/SoftDB/softdb.sqlite
  • Windows: %APPDATA%\SoftDB\softdb.sqlite
  • Linux: ~/.config/SoftDB/softdb.sqlite

When SoftDB loads settings, it starts with the defaults and overlays any values you’ve saved. This means adding new settings in a future version won’t break existing installs — missing keys just fall back to their defaults.

There’s no “Reset all” button in the UI yet. To reset a specific setting, open the Settings panel and change it manually. To reset everything, you can delete or clear the settings table in the SQLite database using any SQLite browser.