All releases

v0.0.5 - Pull Request Drafts, Better Help, and Clearer Staging

v0.0.5 View on GitHub

Release focused on PR drafting, CLI discoverability, clearer staging UX, and making help text easier to maintain.

aic pr - Pull Request Draft Generation

aic can now generate a pull request title and Markdown description from the current branch's commits and cumulative diff against a base branch.

aic pr
aic pr --base origin/main
aic pr -c "call out migration risk"
aic pr --yes
  • aic pr resolves a base branch automatically when possible, preferring refs/remotes/origin/HEAD, then origin/main, origin/master, main, and master.
  • --base lets you override that detection with an explicit branch or ref.
  • --yes skips the confirmation loop and prints the final PR title and body in a copy-ready format.
  • Interactive mode previews the generated PR title and description, with Use, Regenerate, and Edit actions.
  • The Edit flow now supports multiline description editing through the user's configured editor.
  • Generated PR drafts are saved to ~/.aicommit-history.json alongside commit messages and reviews, using the new pr history kind.
  • Large branch diffs reuse the existing chunking flow: aic summarises diff chunks first, then synthesises them into one PR draft.
  • Provider overrides work here too, so commands like aic pr --provider codex and aic pr --provider claude-code use the selected engine for a single run.

Better --help Output

Top-level and nested command help is now much more complete.

aic --help
aic config --help
aic hook --help
  • config, setup, models, and hook now show descriptions in the main command list.
  • Nested subcommands such as aic config set|get|describe and aic hook set|unset now include their own help text.
  • Positional arguments like GIT_ARGS now explain what they do instead of appearing blank.
  • Existing long-form help for commands like review and log is preserved and now comes from the same shared metadata source.

Centralised CLI Copy

User-facing CLI copy now lives in a bundled TOML file instead of being scattered through Rust attributes.

  • Help text is defined in src/cli_help.toml.
  • The runtime command tree loads that metadata before parsing, so normal help output and shell completions stay in sync.
  • aic config describe now draws its config-key descriptions from the same shared source, reducing duplication.

This should make future CLI polish work simpler and less error-prone, especially when adding new subcommands or refining wording.

Explicit Staging Picker

When no files are staged, aic and aic review now show a single explicit menu instead of the previous two-step fallback.

  • Stage all files stages every changed file and continues.
  • Choose files opens the file picker directly so you can stage only the files you want.
  • Cancel aborts cleanly without staging anything.

This keeps the staging flow consistent across commit-message generation and review while making the selective-staging path much easier to discover.

Reliability

  • Added CLI tests to lock in the richer top-level and nested help output.
  • Added PR-generation tests covering explicit base selection, provider overrides, history persistence, and chunked synthesis for large diffs.
  • Shell completion generation now uses the same hydrated command metadata as aic --help, so descriptions do not drift between the two surfaces.
  • Added staging-flow tests to cover the new explicit stage-all, choose-files, and cancel branches.

Install

macOS users can install with Homebrew:

brew install russmckendrick/tap/aicommit

Pre-built binaries are published for Linux, macOS, and Windows from GitHub Releases. The installed executable is aic.

Notes

  • aic pr is generation-only in 0.0.5; it does not create pull requests through GitHub, GitLab, or Bitbucket APIs.
  • Custom OpenAI-compatible endpoints still work through AIC_AI_PROVIDER=openai plus AIC_API_URL, while local CLI providers like codex and claude-code can now be used for PR drafting as well.
  • The package name remains aicommit; the public CLI command remains aic.

Full Changelog: https://github.com/russmckendrick/aicommit/compare/v0.0.4...v0.0.5

Full Changelog: https://github.com/russmckendrick/aicommit/compare/v0.0.4...v0.0.5