Configuration Reference
Configuration Reference
Namespace Index
Use the project-owned tool.custy namespace and follow links to every generated or actively supported property.
Command
.config/custy/config.tomlCategory
Reference
Quick Command
[tool.custy.NAMESPACE]Minimal Shapeâ
.config/custy/config.toml
toml[tool.custy.project]
project_source = "auto"
[tool.custy.cli.versioning]
strategy = "semver"
bump = "auto"
[tool.custy.logging]
level = "INFO"
[tool.custy.git]
default_remote = "origin"Root Namespaces
Configuration Map
| tool.custy.project | Select the validated project source directory. Details. |
|---|---|
| tool.custy.release | Store release metadata while accounting for the documented active-loader shape mismatch. Details. |
| tool.custy.initialization | Set default replacement and prompt behavior for custy init. Details. |
| tool.custy.editor | Choose environment, platform, and container editor precedence. Details. |
| tool.custy.commit.validation | Select built-in, automatic, Commitizen, or basic Git message validation. Details. |
| tool.custy.cli | Configure versioning, paths, templates, execution, push, cleanup, changelog, and experimental workflow defaults. Details. |
| tool.custy.logging | Configure Rich console and rotating file logging. Details. |
| tool.custy.changelog | Control collection, cleaning, release behavior, links, mappings, rendering, and advanced loaded settings. Details. |
| tool.custy.git | Configure remote groups and service-level push selection. Details. |
Resolution Contract
The primary ConfigLoader.resolve() contract is:
- Use a non-
NoneCLI value. - Otherwise use the nested configuration value.
- Otherwise use the resolver's built-in default.
- Raise
ConfigurationErrorwhen the caller marks the value required and no value can be resolved.
Individual resolvers may normalize values, invert a negative flag, or apply command-specific validation after this general sequence. Always use the detailed property page when exact fallback behavior matters.
Lifecycle and Cache Boundary
custy initcopies the packagedapp/templates/config.tomlresource into the current project's.config/custy/config.tomlpath.- After creation, the project copy belongs to the user and may be edited.
ConfigLoaderextracts only the[tool.custy]subtree.- The shared
get_config()loader caches one instance per process. Editing the file during a running Custy process does not refresh that instance. - Relative paths are interpreted from the process working directory unless a specific resolver documents a different boundary.
- Changelog configuration is mapped into dedicated typed dataclasses by
ChangelogConfigResolver.