Configuration
Bindu reads configuration from TOML files at standard locations. All keys are optional.
Precedence
Section titled “Precedence”From highest to lowest:
- CLI flags
- Environment variables (
BINDU_*) ./bindu.toml(project-local)$XDG_CONFIG_HOME/bindu/config.toml(user)/etc/bindu/config.toml(system)- Built-in defaults
Use bindu config show to print the effective merged configuration.
Sample configuration
Section titled “Sample configuration”# Default compression level for `bindu compress`[compress]level = 6jobs = "cpu" # "cpu" or a numberno_entropy = falsekeep = false
# Schema registry[registry]url = "https://schemas.example.com"cache_dir = "~/.cache/bindu/schemas"auth_token_env = "BINDU_REGISTRY_TOKEN"
# Dictionary behavior[dict]auto_fetch = true # Pull referenced dicts automaticallycache_dir = "~/.cache/bindu/dicts"
# Telemetry (opt-in)[telemetry]enabled = falseendpoint = "https://telemetry.example.com"
# Query engine[query]memory_budget = "2GB"parallel = true
# Logging[log]level = "info" # trace|debug|info|warn|errorformat = "pretty" # pretty|jsonEnvironment variables
Section titled “Environment variables”Any key above can be set via env var by uppercasing, replacing . with _, and prefixing with BINDU_:
BINDU_COMPRESS_LEVEL=9BINDU_REGISTRY_URL=https://schemas.example.comBINDU_LOG_LEVEL=debugAdditional env vars:
| Variable | Effect |
|---|---|
BINDU_NO_COLOR | Disable ANSI colors (same as --no-color) |
BINDU_CONFIG | Override config file location |
BINDU_CACHE_DIR | Override all cache directories |
BINDU_DISABLE_MMAP | Never use mmap (useful on network filesystems) |
.binduignore
Section titled “.binduignore”Tell bindu compress --recursive to skip files, using gitignore syntax:
node_modules/*.png*.jpgbuild/.git/Config validation
Section titled “Config validation”bindu config validateExits non-zero if any key has an invalid value or an unknown key is present.