● Reference

Configuration Reference

DBSprout is configured by a dbsprout.toml file, normally generated by dbsprout init. All keys are validated — unknown keys are rejected with a clear error.

Example

[schema]
dialect = "postgresql"
source = "postgresql://user:***@localhost:5432/mydb"
snapshot = ".dbsprout/snapshots/a1b2c3d4.json"

[generation]
default_rows = 100
seed = 42
engine = "heuristic"
output_format = "sql"
output_dir = "./seeds"

[privacy]
tier = "local"

# Per-table overrides
[tables.users]
rows = 50

[tables.audit_logs]
exclude = true

[schema]

KeyTypeDefaultNotes
dialectstringunsetSQL dialect (sqlite, postgresql, mysql, …)
sourcestringunsetConnection URL or schema file path
snapshotstringunsetPath to the stored schema snapshot

[generation]

KeyTypeDefaultNotes
default_rowsint100Rows per table (≥ 1)
seedint42Deterministic seed (≥ 0)
enginestringheuristicOne of heuristic, spec, statistical, finetuned
output_formatstringsqlOne of sql, csv, json, jsonl, parquet
output_dirstring./seedsOutput directory for generated files

[privacy]

KeyTypeDefaultNotes
tierstringlocalOne of local, redacted, cloud

[tables.<name>]

Per-table overrides, keyed by table name.

KeyTypeDefaultNotes
rowsintunsetOverride row count for this table
excludeboolfalseSkip this table during generation

Cloud LLM provider/model settings and training options live in their own sections written by the relevant commands. Run dbsprout doctor to validate a config file, and see the LLM Configuration guide for provider setup.