use case

Meet maintainer expectations with clean, conventional commits out of the box

Many open-source projects require Conventional Commits or have strict commit message guidelines. git-agent helps contributors produce the right format automatically — reducing the back-and-forth with maintainers, making PRs easier to review, and increasing the chance of a smooth merge.

Contributing to a new open-source project means learning its commit conventions, scope naming, and changelog expectations. A rejected commit message often means a CI check fails, a maintainer asks for a rewrite, or your PR gets labelled with 'needs-fix'. For first-time contributors, this friction can be discouraging and slows down the review process.

git-agent analyses the working-tree diff and generates a conventional commit message that matches the project's expected format. It discovers and stages the work itself, handles type selection, scope inference, and body writing automatically, then validates the message before it reaches the remote.

  • Clone the repository and run `git-agent init`. git-agent scans the project structure and suggests scopes aligned with the project's conventions.
  • Make your changes, run the relevant checks, and keep the work in the working tree.
  • Run `git-agent --intent "..."`. It discovers the diff, stages the work, and generates a conventional commit with the correct type, scope, and description for your contribution.
  • Push and open your PR. The commit history is clean, CI passes the message format check, and maintainers can review the changes without format-related back-and-forth.
Will git-agent work correctly for a project that uses a custom commit format?
git-agent generates Conventional Commits format by default. If a project uses a custom format, you can configure the commit-msg hook in .git-agent/config.yml to validate against the project's specific rules, and the retry loop will adapt the generated messages.
Does git-agent help with the DCO (Developer Certificate of Origin) sign-off?
git-agent generates the commit message body. You can add a Signed-off-by footer manually after the commit is generated, or configure your global git template to include it automatically.
Can I use git-agent for projects that don't use Conventional Commits?
Yes. git-agent still generates well-structured commit messages even without the full specification. You can disable the strict format validation if the project expects plain commit messages.