Skip to content

v0.3.0

Latest

Choose a tag to compare

@github-actions github-actions released this 30 Oct 18:02
· 4 commits to main since this release

commitclerk 0.3.0 is the first release since the package split. It ships everything the README has described for the past three months.

pipx install --force commitclerk   # or: pip install --upgrade commitclerk

More providers, and a way to run with no network at all

  • --provider anthropic calls Claude models through the Messages API.
  • --provider ollama uses a local model. No API key is needed and nothing goes over the network.
  • --base-url (or $OPENAI_BASE_URL) points at any OpenAI-compatible endpoint.
  • --offline writes a message from local signals only, with no API call and no key. It never writes feat: or fix:, because nothing local can show what a change was meant to do.
  • --timeout sets how long to wait on each request, and transient API failures are now retried.

OpenAI is still the default provider, so existing setups keep working unchanged.

Your staged diff is checked before anything leaves the machine

  • Before the first request, every added line is checked for credentials. A hit refuses the run with exit code 3, and the notice names the file and line but never the secret itself. --redact masks the match and carries on, and --no-scan turns the check off.
  • .clerkignore (gitignore syntax) withholds the contents of matching files and still sends their paths and line counts.
  • --no-examples stops past commit messages being sent verbatim, while the counts and shapes behind the house style are still used.
  • Repository text now reaches the model inside fences it cannot close, and SECURITY.md explains what that protects against and what it does not.

Messages that read like your repository's own

  • The type and scope follow your history's conventions, and in monorepos the scope comes from the workspace layout.
  • Worked examples come from your own git log.
  • --context (or .clerk/context.md) tells the model why, which a diff cannot show.
  • An issue key in the branch name becomes a Refs: trailer.
  • --deep summarises each file of a very large commit, so the message covers the whole diff and not just the first 5% of it.
  • .clerk.json lets a team set these once instead of repeating flags.
  • "assisted_by": true adds an Assisted-by: trailer. It is off by default.
  • git clerk now works as a git subcommand.

Fixes

  • A line the diff deletes is no longer described as work that was done.
  • A file the diff only mentions is no longer described as a changed file.
  • A single code file in a commit no longer switches off the documentation guard.
  • The wrappers now stage with git add -A, so dotfiles and deletions are no longer skipped.

The full list is in CHANGELOG.md.

Full Changelog: v0.2.1...v0.3.0