id = "harlequin"
name = "Harlequin"
homepage = "https://harlequin.sh/"
description = "Easy, fast, and beautiful database client for the terminal"
executables = ["harlequin"]
[dotfiles]
paths = [
"[configHome]/harlequin/",
"[appData]/harlequin/",
"%LOCALAPPDATA%/harlequin/",
]
secret = [
"[configHome]/harlequin/config.toml",
"[appData]/harlequin/config.toml",
"%LOCALAPPDATA%/harlequin/config.toml",
"~/harlequin.toml",
"~/.harlequin.toml",
]
[commands]
format = 1
label = "Open databases"
description = "Open one or more database files or connection strings with a chosen adapter. Adapter-specific options are left out."
quality = "ai-draft"
parser = { end_of_options = "--", interleave = "permute", long_equals = false, short_attached = false, short_bundles = false }
[[commands.source]]
id = "docs"
kind = "manual"
url = "https://github.com/tconbeer/harlequin/blob/main/README.md"
revision = "main 2026-10"
evidence = """
harlequin "path/to/duck.db" "another_duck.db"
harlequin --adapter sqlite
harlequin -a sqlite "path/to/sqlite.db" "another_sqlite.db"
`--read-only` connects in a mode the database refuses writes in
Harlequin takes `--read-only` too.
"""
[[commands.field]]
id = "adapter"
label = "Adapter"
type = "string"
option = ["--adapter", "-a"]
suggestions = [{ value = "duckdb", label = "DuckDB" }, { value = "sqlite", label = "SQLite" }]
sources = ["docs"]
[[commands.field]]
id = "read_only"
label = "Read-only"
type = "boolean"
option = ["--read-only"]
sources = ["docs"]
[[commands.field]]
id = "connections"
label = "Database files or connection strings"
description = "Leave empty for an in-memory database."
type = "string"
position = 0
multiple = true
sources = ["docs"]
[[commands.task]]
id = "duckdb"
label = "Open DuckDB file"
fields = ["connections", "read_only"]
required = ["connections"]
[[commands.task]]
id = "sqlite"
label = "Open SQLite file"
fields = ["adapter", "connections", "read_only"]
required = ["connections"]
set = { adapter = ["sqlite"] }
[[commands.group]]
id = "basic"
label = "Basic"
fields = ["adapter", "connections", "read_only"]