aic
v0.5.6

Switch from aicommits

aicommits alternative: aic

aicommits is the established default — a proven tool for one message per staged diff. If your real problem is that work piles up unstaged and history gets muddy, aic is the alternative built for that: it splits your changes into logical atomic commits and resolves merge conflicts with per-file approval.

Why people switch from aicommits

aicommits writes one message for what you stage — but it cannot split a messy working tree into logical commits, and it cannot help you untangle a merge. Both leave you with mixed-concern commits and hand-resolved conflicts.

Feature-by-feature

Capability aic aicommits
Auto-batch unstaged work into multiple commits Yes — splits unstaged changes into logical atomic commits No — one message per staged diff
Split a single file across commits (per-hunk) Yes — routes each hunk to its own commit by intent No — file-granular at most
Resolve merge conflicts Yes — `aic resolve` proposes a diff, asks per file No — commit messages only
First-class Anthropic · Gemini · DeepSeek Yes — native providers Only via OpenRouter / custom endpoint
Runtime & dependencies Rust binary — no Node.js Node.js v22+ — npm
Provider reach 11 first-class + OpenAI-compatible 8 + OpenRouter/custom (any model)
Commit message formats Conventional Commits plain · conventional · gitmoji
Git hook integration No Yes — prepare-commit-msg hook
Multiple message candidates No Yes — `--generate N`
Prompt & locale control System prompt via env `--prompt`, locale, max-length
Popularity & ecosystem New, small Entrenched first-mover

Install aic →

Switch to aic if…

…your unstaged work piles up and you want it committed as clean, atomic, conventional commits — even within a single file — or you want AI-resolved merge conflicts without installing Node.js.

Stay with aicommits if…

…you rely on its `prepare-commit-msg` hook, want gitmoji or plain formats, need multiple message candidates, or just want the comfort of the biggest community.

How to switch

  1. Install aic: brew install CaicoLeung/aic/aic
  2. Configure once: run `aic setup` — provider, key, and model in one wizard
  3. Commit: stage your work and run `aic`; aic batches unstaged work automatically
aic vs aicommits ★ Star on GitHub