Commiter AI
AI-powered git commit grouping. Intelligently splits your messy changes into atomic, well-described commits.
Features
- Intelligent Grouping: Automatically groups lines and files into logical commits using AI.
- Interactive TUI: Review and refine proposed commits in a beautiful terminal interface.
- Headless CLI: High-performance CLI flags for power users.
- Persona Support: Choose between "senior dev", "junior dev", or "newbie" commit styles.
- Diff Optimization: Handles large diffs by intelligently truncating less relevant parts.
- Filtering: Target specific files or patterns for commit.
- Branching: Create new branches on the fly.
- Auto-Push: Seamlessly push your changes after committing.
Quick Start
Run commiter to start the interactive TUI. Use arrow keys to navigate, Space to toggle commits, and Enter to execute.
Power User CLI
Commiter supports a wide range of flags for quick headless execution:
Basic Headless Flow
# Auto-group all changes and execute
commiter --auto --yes
# Auto-group and preview before confirming
commiter --auto --preview
# Instruct AI to make exactly 3 commits
commiter --commits 3 --yes
Filtering and Context
# Only consider python files in src/
commiter --auto --include "src/*.py" --preview
# Exclude documentation
commiter --auto --exclude "docs/*"
# Provide specific hints to the AI
commiter --auto --context "Refactor the authentication logic to use JWT"
Workflow Automation
# Create a new branch, commit everything, and push
commiter --auto --branch feature/login-v2 --yes --push
# Do a dry run to see what AI suggests without changing anything
commiter --auto --dry-run
Advanced Overrides
# Override the AI model for a single run
commiter --auto --model gemini-2.0-flash
# Disable diff truncation (send the full diff to AI)
commiter --auto --no-optimize
# Override the commit persona
commiter --auto --persona "junior dev"
Requirements
- Python >= 3.10
- Git
- Valid API key for Gemini (default), OpenAI, or Anthropic.
Configuration
On first run, commiter will guide you through an interactive setup to save your API key and preferences to ~/.commiter/config.toml. You can always re-run the setup with:
commiter --config
License
MIT
Metadata
Release files for commiter 0.2.2
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| commiter-0.2.2.tar.gz | 91.1 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| commiter-0.2.2-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 119.8 kB
Release files / commiter-0.2.2.tar.gz
| Download URL | commiter-0.2.2.tar.gz |
|---|---|
| Size | 91.1 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
8a874126119da6d25393b42227b78c96121cd0ecad71b25921ce1a80188bd328
|
|
BLAKE2b-256 checksum How to use checksums |
51bd45bd1fb0d217d1ca8456db14e7c1dce82c062b4cf85e63475c1449c87ad9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|
Release files / commiter-0.2.2-py3-none-any.whl
| Download URL | commiter-0.2.2-py3-none-any.whl |
|---|---|
| Size | 28.7 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a93123272a7a920bfee7c12a6bfe3c1f45aac79c2c60433b9782e6e6f2f7262b
|
|
BLAKE2b-256 checksum How to use checksums |
2161e5bb88b48eda9003af1b4eb0b95c96671d6806f5c4b9fafa64cb30f222ba
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
uv/0.10.4 {"installer":{"name":"uv","version":"0.10.4","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":null,"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":null}
|