Configuration
sley resolves configuration in this order (highest priority first):
- Command-line flags
- Environment variables
.sley.yamlconfiguration file- Default values
Quick Start
No configuration file is required. sley works out-of-the-box with sensible defaults.
bash
# Initialize with defaults (creates .sley.yaml)
sley init --yes
# Or just start using sley - it auto-initializes
sley bump patchAuto-initialization
When the .version file does not exist, sley:
- Reads the latest Git tag via
git describe --tags - Uses it if it is a valid semantic version
- Otherwise initializes to
0.0.0
Use --strict to disable this:
bash
sley bump patch --strict
# => Error: .version file not foundMinimal .sley.yaml
yaml
path: .version
theme: sley
plugins:
commit-parser: true
tag-manager:
enabled: true
prefix: "v"Monorepo Setup
For monorepos, add a workspace section to the root .sley.yaml. Optionally add a .sley.yaml in each module directory to override plugin settings.
Root .sley.yaml:
yaml
path: .version
workspace:
versioning: independent # or "coordinated" (default)
discovery:
enabled: true
plugins:
tag-manager:
enabled: true
prefix: "{module_path}/v"Per-module .sley.yaml (optional override):
yaml
plugins:
dependency-check:
enabled: true
auto-sync: true
files:
- path: package.json
field: version
format: jsonVersioning Modes
| Mode | Behavior |
|---|---|
coordinated (default) | sley discover warns on version mismatches between modules |
independent | Mismatch warnings suppressed - expected for independently versioned modules |
Config Merge Rules
When a module has its own .sley.yaml, sley merges it with the root config:
| Field | Merge behavior |
|---|---|
| Plugin pointer fields (tag-manager, etc.) | Module non-nil value wins |
commit-parser | Root wins (workspace-level setting) |
extensions, pre-release-hooks | Additive; module entry wins on name conflict |
path, theme, workspace | Root only - module values ignored |
Configuration Methods
| Method | Use Case | Documentation |
|---|---|---|
.sley.yaml | Project-level configuration, plugin settings, monorepo setup | Reference |
| Environment variables | CI/CD pipelines, session-level overrides | Reference |
| Command-line flags | One-off overrides, scripting | CLI Reference |
See Also
- .sley.yaml Reference - Complete configuration file reference
- Environment Variables - Available environment variables and CI detection
- CLI Reference - Command-line flags and options
- Plugin System - Plugin configuration and execution order
- Monorepo Support - Multi-module workspace setup
- Troubleshooting - Common configuration issues