- Commit with
scripts/committer "<subject>" -- <path>...; it stages only listed paths. Use--bodyor--body-filefor commit bodies.
- Use
./scripts/release check <version>for local preflight. - Use
./scripts/release run <version>only after explicit release approval. - Tag pushes run the release workflow, publish the GitHub tarball, publish npm, and update
gumadeiras/homebrew-tap.
- Keep
CHANGELOG.mdupdated for user-facing changes. If a commit adds a feature, fix, behavior change, CLI change, GUI change, output-format change, install/release change, or other user-visible change, add or update an entry under the topUnreleasedsection in the same commit. - Never edit released changelog sections for current work. Corrections, renames, and behavior changes after a release must be recorded only under the top
Unreleasedsection unless Gustavo explicitly asks for release-history repair. - Use these sections when they apply:
Features,Fixes, andChanges. - Omit empty sections.
- Write user-facing entries instead of repository chore notes.
- Do not include pure tests, internal refactors, CI-only changes, or docs-only changes unless they affect user behavior, API, installation, or usage.