AICommit

The Problem Every Developer Knows

We've all been there:

git commit -m "fix"
git commit -m "update stuff"
git commit -m "changes"
git commit -m "wip"
git commit -m "final fix"
git commit -m "final fix for real"

The result? A git history that's impossible to navigate, confused teammates, and failed code reviews.

The Solution: AI-Powered Commits

AICommit analyzes your staged changes and generates professional commit messages that follow the Conventional Commits specification:

git add .
aicommit

# Output:
# ✨ feat(auth): implement OAuth2 social login
#
# Add JWT-based authentication system with password hashing.
# - Create login/register endpoints with validation
# - Implement secure password hashing with bcrypt
# - Add JWT token generation and verification middleware

What Makes AICommit Different

100% Private and Local

Unlike other AI commit tools that send your code to cloud APIs, AICommit runs entirely on your machine using LM Studio. Your code never leaves your computer.

Context-Aware Messages

AICommit adapts the commit message length based on the scope of your changes:

Small change (1-2 files):

🐛 fix(ui): correct button alignment issue

Medium change (3-5 files):

✨ feat(auth): implement user registration

Add complete user registration system with validation.
- Create registration form with input validation
- Add email confirmation workflow
- Implement password strength requirements

Large refactor (6+ files):

♻️ refactor(api): restructure authentication system

Modernize authentication architecture for better security.
- Replace JWT with session-based authentication
- Add OAuth2 integration for social login
- Implement role-based access control (RBAC)
- Create authentication middleware pipeline
- Add comprehensive security headers

Quick Start

Installation

npm install -g @abd3lraouf/aicommit

Setup Local AI

  1. Download LM Studio
  2. Search and download: qwen3-4b-teen-emo (4GB, fast & accurate)
  3. Load the model and start the server

Configure

aicommit config

Use It

git add .
aicommit

Command Options

# Basic usage
aicommit

# Interactive mode - review before committing
aicommit --interactive

# Dry run - see message without committing
aicommit --dry-run

# Verbose output
aicommit --verbose

# Debug mode
aicommit --debug

Commit Types

AICommit automatically selects the appropriate type and emoji:

Type Emoji Usage
feat New features
fix 🐛 Bug fixes
docs 📝 Documentation
refactor ♻️ Code restructuring
perf Performance improvements
test Adding tests
chore 🔧 Maintenance tasks

Technical Details

Built with TypeScript and designed for extensibility:

Resources