
[](https://npmjs.org/package/gims)
[](https://npmjs.org/package/gims)
[](https://opensource.org/licenses/MIT)
[](https://github.com/s41r4j/gims)
[](https://nodejs.org)
**AI-powered Git CLI that writes your commit messages for you**
*Because life's too short for "fix stuff" commits* ๐ฏ
[Installation](#-installation) โข [Quick Start](#-quick-start) โข [Commands](#-commands) โข [AI Setup](#-ai-providers) โข [Configuration](#-configuration)
---
## โจ Features
- ๐ค **AI-Generated Commits** โ Let AI analyze your changes and write meaningful commit messages
- ๐ **Smart Status** โ Enhanced git status with file type detection and insights
- ๐ **Workflow Shortcuts** โ Common multi-step operations condensed to single commands
- ๐ **Commit Analytics** โ Track your commit streak, patterns, and statistics
- ๐ **Code Review** โ Get AI-powered code review before committing
- ๐ก๏ธ **Safe Operations** โ Built-in safeguards for destructive commands
- โก **Lightning Fast** โ Optimized for speed with intelligent caching
---
## ๐ฆ Installation
```bash
npm install -g gims
```
**Requirements:** Node.js >= 18.18.0
---
## โก Quick Start
```bash
# 1. Setup AI provider (choose one)
g setup --api-key gemini # ๐ Free & fast (recommended)
g setup --api-key openai # ๐ฏ High quality
g setup --api-key groq # โก Ultra fast
# 2. Start using it!
g s # Check status with AI insights
g o # AI commit + push (one command!)
```
### Your New Workflow
```bash
# Before (traditional git)
git add .
git commit -m "trying to think of message..."
git push
# After (with GIMS)
g o # That's it. AI handles the rest.
```
---
## ๐ Commands
### ๐ง Core Commands
| Command | Alias | Description |
|---------|-------|-------------|
| `g status` | `g s` | Enhanced status with AI insights & file type emojis |
| `g oneshot` | `g o` | Stage all โ AI commit โ Push (full workflow) |
| `g local` | `g l` | Stage all โ AI commit (no push) |
| `g suggest` | `g sg` | Get AI commit message suggestions |
| `g version` | `g v` | Manage project version (S4 system) |
| `g whoami` | โ | Show system identity & version |
| `g wip` | โ | Quick work-in-progress commit |
### ๐ Analytics & Review
| Command | Alias | Description |
|---------|-------|-------------|
| `g review` | `g r` | AI code review with complexity analysis |
| `g today` | `g t` | Show all commits made today |
| `g stats` | โ | Personal statistics: streak, patterns, style |
| `g split` | โ | AI suggestions for splitting large changesets |
### โก Workflow Shortcuts
| Command | Alias | What it does |
|---------|-------|--------------|
| `g safe-pull` | `g sp` | Stash โ Pull โ Pop (safe pull with uncommitted changes) |
| `g fix` | โ | Smart fix for diverged/ahead/behind branches |
| `g main` | โ | Switch to main/master + pull latest |
| `g stash-save` | `g ss` | Quick stash with auto-generated name |
| `g stash-pop` | `g pop` | Pop the latest stash |
| `g unstage` | `g us` | Unstage all staged files |
| `g discard` | `g x` | Discard all changes (requires `--yes`) |
### ๐ ๏ธ Git Helpers
| Command | Alias | Description |
|---------|-------|-------------|
| `g last` | โ | Show last commit details with diff |
| `g conflicts` | โ | Conflict resolution helper |
| `g cleanup` | `g clean` | Remove local branches deleted from remote |
| `g list` | `g ls` | Compact commit history |
| `g amend` | `g a` | Amend the previous commit |
| `g undo` | `g u` | Undo last commit (keep changes) |
| `g delete-branch` | `g del` | Delete branch locally and remotely |
### ๐ข S4 Versioning (New)
GIMS now uses the **[S4 Versioning System](https://github.com/s41r4j/s4vs)**, a forensic-grade versioning standard stored entirely in **Git Tags**.
`MAJOR.MINOR.PATCH-STAGE.BUILD+DATE.TIME.COMMIT.BRANCH`
*(e.g., `0.8.2-dev.1+20250129.1305.af8d9c.main`)*
| Command | Description |
|---------|-------------|
| `g v` | Smart bump (resets build on new day) + Create Tag |
| `g v -n` | Dry run (preview next version) |
| `g v major` | Force major bump (`1.0.0` โ `2.0.0`) |
| `g v --list` | List stable releases (hides dev tags) |
| `g v --prune` | Delete old `dev` tags (keeps last 10) |
| `g v -i` | Version analysis with timestamp |
| `g whoami` | Dynamic identity & version banner |
> **Note:** S4 uses Git Tags as the Single Source of Truth. No `VERSION` file is created. It updates your `.env` version variables if they exist.
### ๐ง Setup & Config
| Command | Description |
|---------|-------------|
| `g setup` | Interactive setup wizard |
| `g setup --api-key