Skip to content

About

πŸ€– AI Conventional Commits that learn your repo's style β€” generate, split and refine messages

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

ai-conventional-commit icon

TypeScript Node.js npm MIT

Opinionated, style-aware AI assistant for crafting and splitting git commits (opencode-based, provider-agnostic).

Website Β· Documentation

Features

  • AI-generated conventional commits β€” reads your staged diff and produces a Conventional Commits-compliant message in one command.
  • Smart commit splitting β€” clusters hunks semantically and proposes multiple atomic commits, each selectively staged and applied.
  • Gitmoji style support β€” standard, gitmoji (emoji + type), and gitmoji-pure (emoji only) modes out of the box.
  • Refine & reword β€” iteratively reshape the last commit's wording, or reword any past commit by hash or interactive pick.
  • Plugin system β€” register custom transform and validate hooks to enforce team conventions or post-process candidates.
  • Privacy-aware diff filtering β€” three tiers (low / medium / high) control exactly how much code is sent to the model.

Install

npm install -g @kud/ai-conventional-commit-cli

Usage

$ git add .
$ ai-conventional-commit
βœ” feat(api): add pagination metadata to list endpoint

$ ai-conventional-commit split
1. refactor(parser): simplify token scanning
2. feat(parser): support negated glob segments
3. test(parser): add cases for brace + extglob combos

$ ai-conventional-commit refine --shorter
$ ai-conventional-commit refine --scope ui
$ ai-conventional-commit reword HEAD
$ ai-conventional-commit models --interactive --save
$ ai-conventional-commit config set style gitmoji

Quiet output

When stdout is not a terminal (scripts, pipes, non-interactive runs), generate prints a single line after a successful commit instead of the full panel:

$ ai-conventional-commit --yes | cat
βœ“ 1a2b3c4 feat(api): add pagination metadata Β· 2 files +40 βˆ’3

Errors, refused commits and validation warnings still go to stderr in full.

Option Effect
-q, --quiet / AICC_QUIET=1 One-line output, even in a terminal
--verbose / AICC_QUIET=0 Full output everywhere, even when stdout is not a TTY

Without --yes in a terminal, quiet mode still shows the suggested message before asking for confirmation.

Development

git clone https://github.com/kud/ai-conventional-commit-cli.git
cd ai-conventional-commit-cli
npm install
npm run dev -- generate

πŸ“š Full documentation β†’ ai-conventional-commit-cli/docs

About

πŸ€– AI Conventional Commits that learn your repo's style β€” generate, split and refine messages

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Used by

Contributors

Languages