Reference

Configuration

Configuration layers belong to the CLI, the environment, and config files rather than hidden defaults: defaults < configuration files < environment variables < CLI flags.

Configuration

Netsuke layers configuration in this order, with later entries overriding earlier ones: defaults < configuration files < environment variables < CLI flags. This means a flag on the command line always wins, and project config files can be overridden per-invocation without editing them.

Note: The keys below mirror docs/sample-netsuke.toml in the repository as of v0.1.0. Netsuke is pre-1.0 — some key names and default values may still change before a stable release. Check the project repository for the latest status.

Config file discovery

Point Netsuke at an explicit configuration file, or let it discover one:

  1. --config /path/to/file.toml (CLI flag)
  2. NETSUKE_CONFIG=/path/to/file.toml (environment)
  3. .netsuke.toml in the project root
  4. User configuration directories (e.g. $XDG_CONFIG_HOME)

CLI-only controls such as --config, --directory, and subcommands are not read from configuration files.

Environment variables

Settings can be controlled via NETSUKE_-prefixed env vars:

NETSUKE_JOBS=8
NETSUKE_LOCALE=es-ES
NETSUKE_PROGRESS=never
NETSUKE_ACCESSIBILITY=on
NETSUKE_EMOJI=never
# Keys are flat; this mirrors docs/sample-netsuke.toml
# Manifest path override
file = "Netsukefile"
# Number of parallel jobs (1-64)
jobs = 8
# Default build targets when the CLI names none
default_targets = ["fmt", "lint", "test"]
# Output policies
progress = "auto"       # auto | always | never
accessibility = "auto"  # auto | on | off
emoji = "auto"          # auto | always | never
color = "auto"          # auto | always | never
locale = "en-US"
# Network policy for the fetch() helper
fetch_default_deny = false
fetch_allow_host = ["*.example.com"]
fetch_block_host = ["metadata.internal"]