Configuration
Skaff stores user configuration in JSON at ~/.config/skaff/settings.json. Environment variables with matching names override the file at runtime. Use skaff config commands rather than editing the file manually.
| Key | Type | Description |
|---|---|---|
TEMPLATE_DIR_PATHS | string[] | Directories or Git repositories that contain templates. Skaff scans directories for templates/ and clones remote repositories such as github:org/templates#branch. |
PROJECT_SEARCH_PATHS | string[] | Locations Skaff inspects when running skaff project ls. Helpful when projects live in multiple workspaces. |
NPM_PATH | string | Command used to execute template-defined scripts. Defaults to npm; set to bunx, pnpm, or another runner as needed. |
Environment variable formats:
# multiple directories
export TEMPLATE_DIR_PATHS="~/templates:/srv/templates"
# mix local directories and remote GitHub repositories (branch optional)
export TEMPLATE_DIR_PATHS="~/templates,github:timonteutelink/example-templates#main"
# custom config location
export SKAFF_CONFIG_PATH="$PWD/.skaff/settings.json"
List the active configuration at any time with skaff config get --format table.