gims 0.5.4 β†’ 0.6.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md ADDED
@@ -0,0 +1,58 @@
1
+ # Changelog
2
+
3
+ ## [0.6.2] - 2024-12-19
4
+
5
+ ### πŸš€ AI Model Updates
6
+ - **Updated to latest AI models**:
7
+ - Gemini: `gemini-2.5-flash` (latest and fastest)
8
+ - OpenAI: `gpt-5` (latest GPT model)
9
+ - Groq: `groq/compound` (latest Groq model)
10
+
11
+ ### πŸ“š Documentation
12
+ - **Simplified README**: Reduced from verbose to concise format
13
+ - **Focused on essentials**: Quick start, main commands, examples
14
+ - **Better readability**: Easier to scan and understand
15
+
16
+ ### 🧹 Repository Cleanup
17
+ - Removed development-specific files (.kiro/, .github/, coverage/)
18
+ - Updated .gitignore to exclude dev directories
19
+ - Cleaner package for npm distribution
20
+
21
+ ---
22
+
23
+ ## [0.6.1] - 2024-12-19
24
+
25
+ ### ✨ Enhanced User Experience
26
+ - **Single-letter aliases** for main workflow commands
27
+ - **Quick API setup**: `g setup --api-key <provider>`
28
+ - **Better onboarding**: Clear setup instructions with direct links
29
+ - **Quick help**: `g q` command for instant reference
30
+
31
+ ### πŸ”§ Improved Commands
32
+ - `g s` - Status (enhanced git status)
33
+ - `g i` - Interactive (guided commit wizard)
34
+ - `g p` - Preview (see what will be committed)
35
+ - `g l` - Local (AI commit locally)
36
+ - `g o` - Online (AI commit + push)
37
+ - `g h` - History (numbered commit log)
38
+ - `g a` - Amend (smart amend with AI)
39
+ - `g u` - Undo (undo last commit)
40
+
41
+ ---
42
+
43
+ ## [0.6.0] - 2024-12-19
44
+
45
+ ### πŸš€ Major Enhanced Release
46
+ - **Interactive commit wizard** with multiple AI suggestions
47
+ - **Enhanced git status** with AI insights and project analysis
48
+ - **Modular architecture** for better performance and maintainability
49
+ - **Smart configuration** with project type detection
50
+ - **Progress indicators** and better error handling
51
+ - **Caching system** for improved AI response times
52
+
53
+ ---
54
+
55
+ ## [0.5.4] - Previous Version
56
+ - Basic AI-powered commit messages
57
+ - Simple configuration
58
+ - Core git operations
@@ -0,0 +1,74 @@
1
+ # πŸš€ GIMS Quick Reference
2
+
3
+ ## Single-Letter Workflow Commands
4
+
5
+ ```bash
6
+ g s # Status - Enhanced git status with AI insights
7
+ g i # Interactive - Guided commit wizard
8
+ g p # Preview - See what will be committed
9
+ g l # Local - AI commit locally
10
+ g o # Online - AI commit + push
11
+ g h # History - Numbered commit log
12
+ g a # Amend - Smart amend with AI
13
+ g u # Undo - Undo last commit
14
+ ```
15
+
16
+ ## Quick Setup
17
+
18
+ ```bash
19
+ # Choose your AI provider (one-time setup)
20
+ g setup --api-key gemini # πŸš€ Recommended: Fast & free
21
+ g setup --api-key openai # πŸ’Ž High quality
22
+ g setup --api-key groq # ⚑ Ultra fast
23
+
24
+ # Or run full setup wizard
25
+ g setup
26
+ ```
27
+
28
+ ## Essential Workflow
29
+
30
+ ```bash
31
+ # 1. Check what's changed
32
+ g s
33
+
34
+ # 2. Commit with AI (choose one)
35
+ g i # Interactive mode (guided)
36
+ g o # One-command: commit + push
37
+ g l # Local commit only
38
+
39
+ # 3. View history
40
+ g h # Recent commits
41
+ g h --detailed --limit 10 # Detailed view
42
+ ```
43
+
44
+ ## Default AI Models
45
+
46
+ - **Gemini**: `gemini-2.5-flash` (Fast, free, recommended)
47
+ - **OpenAI**: `gpt-5` (Latest GPT model)
48
+ - **Groq**: `groq/compound` (Ultra-fast inference)
49
+
50
+ ## Pro Tips
51
+
52
+ ```bash
53
+ g sg --multiple # Get 3 AI suggestions
54
+ g p # Preview before committing
55
+ g a # Smart amend with new AI message
56
+ g sync --rebase # Smart sync with rebase
57
+ g stash # Stash with AI description
58
+ ```
59
+
60
+ ## Configuration
61
+
62
+ ```bash
63
+ g config --list # View all settings
64
+ g config --set conventional=true # Enable conventional commits
65
+ g config --set autoStage=true # Auto-stage changes
66
+ g config --set provider=gemini # Set AI provider
67
+ ```
68
+
69
+ ## Help
70
+
71
+ ```bash
72
+ g --help # All commands
73
+ g q # This quick reference
74
+ ```
package/README.md CHANGED
@@ -1,328 +1,75 @@
1
1
  # πŸš€ GIMS - Git Made Simple
2
2
 
3
- <div align="center">
4
-
5
- [![npm version](https://img.shields.io/npm/v/gims.svg)](https://npmjs.org/package/gims)
6
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
7
- [![Node.js Version](https://img.shields.io/node/v/gims.svg)](https://nodejs.org/)
8
- [![AI Powered](https://img.shields.io/badge/AI-Powered-blueviolet.svg)](https://github.com/yourusername/gims)
3
+ [![npm version](https://img.shields.io/npm/v/gims.svg)](https://npmjs.org/package/gims)
4
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
5
+ [![AI Powered](https://img.shields.io/badge/AI-Powered-blueviolet.svg)](https://github.com/s41r4j/gims)
9
6
 
10
- **The AI-powered Git CLI that writes your commit messages for you**
11
-
12
- *Because life's too short for "fix stuff" commits* 🎯
7
+ **AI-powered Git CLI that writes your commit messages for you**
13
8
 
14
- </div>
9
+ *Because life's too short for "fix stuff" commits* 🎯
15
10
 
16
- ---
17
-
18
- ## ✨ What is GIMS?
19
-
20
- GIMS is a revolutionary Git CLI tool that uses AI to automatically generate meaningful commit messages from your code changes. Say goodbye to generic "update code" commits and hello to descriptive, professional commit messages that actually tell a story.
21
-
22
- ### 🎬 See It In Action
23
-
24
- ```bash
25
- # Traditional Git workflow 😴
26
- git add .
27
- git commit -m "update stuff" # πŸ€¦β€β™‚οΈ
28
- git push
29
-
30
- # GIMS workflow ⚑
31
- g o # AI analyzes changes, commits with perfect message, and pushes!
32
- ```
33
-
34
- ## 🌟 Features
35
-
36
- ### πŸ€– **AI-Powered Commit Messages**
37
- - OpenAI, Google Gemini, and Groq support with automatic provider selection
38
- - Smart diff analysis that understands your code changes
39
- - Handles large codebases with intelligent summarization and safe truncation
40
- - Optional Conventional Commits formatting and optional commit body generation (`--conventional`, `--body`)
41
-
42
- ### ⚑ **Lightning Fast Workflow**
43
- - One command commits: `g o` - analyze, commit, and push
44
- - Smart suggestions: `g s` - get AI-generated messages copied to clipboard
45
- - Local commits: `g l` - commit locally with AI messages
46
- - Staged-only by default for suggestions for precise control (use `--all` to stage everything)
47
-
48
- ### 🧠 **Intelligent Code Analysis**
49
- - Analyzes actual code changes, not just file names
50
- - Understands context from function changes, imports, and logic
51
- - Graceful fallbacks for extremely large changesets and offline use
52
-
53
- ### πŸ› οΈ **Developer-Friendly**
54
- - Numbered commit history with `g ls` / `g ll` and index-aware commands
55
- - Smart branching: `g b 5` creates branch from commit #5
56
- - Safe operations with confirmations and dry-run support
57
- - JSON output for editor integrations
58
- - Quality-of-life: `--amend`, `undo` command, and automatic upstream setup on push
59
- - Manual commit command for custom messages: `g m "your message"`
60
-
61
- ## πŸš€ Quick Start
62
-
63
- ### Prerequisites
64
-
65
- - Node.js >= 18.18.0 (Node 20+ recommended)
66
- - npm >= 9
67
-
68
- Tip: Use nvm to manage Node versions per-user without sudo:
69
-
70
- ```bash
71
- curl -fsSL https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.7/install.sh | bash
72
- export NVM_DIR="$HOME/.nvm" && . "$NVM_DIR/nvm.sh"
73
- nvm install 20 && nvm alias default 20
74
- ```
75
-
76
- ### Installation
11
+ ## ⚑ Quick Start
77
12
 
78
13
  ```bash
14
+ # Install
79
15
  npm install -g gims
80
- ```
81
16
 
82
- If you get EACCES permission errors on Linux when installing globally, set a user prefix:
17
+ # Setup AI (choose one)
18
+ g setup --api-key gemini # Free & fast (recommended)
19
+ g setup --api-key openai # High quality
20
+ g setup --api-key groq # Ultra fast
83
21
 
84
- ```bash
85
- mkdir -p ~/.npm-global
86
- npm config set prefix '~/.npm-global'
87
- echo 'export PATH="$HOME/.npm-global/bin:$PATH"' >> ~/.bashrc
88
- source ~/.bashrc
89
- npm install -g gims
22
+ # Use it
23
+ g s # Check status with AI insights
24
+ g o # AI commit + push
90
25
  ```
91
26
 
92
- ### Setup AI (Choose One)
93
-
94
- **Option 1: OpenAI**
95
- ```bash
96
- export OPENAI_API_KEY="your-api-key-here"
97
- ```
27
+ ## 🎯 Main Commands
98
28
 
99
- **Option 2: Google Gemini**
100
- ```bash
101
- export GEMINI_API_KEY="your-api-key-here"
102
- ```
29
+ | Command | Description |
30
+ |---------|-------------|
31
+ | `g s` | Enhanced status with AI insights |
32
+ | `g i` | Interactive commit wizard |
33
+ | `g o` | AI commit + push |
34
+ | `g l` | AI commit locally |
35
+ | `g h` | Commit history |
36
+ | `g a` | Smart amend |
103
37
 
104
- **Option 3: Groq**
105
- ```bash
106
- export GROQ_API_KEY="your-api-key-here"
107
- # Optional, if self-hosting/proxying
108
- export GROQ_BASE_URL="https://api.groq.com/openai/v1"
109
- ```
38
+ ## πŸ€– AI Models
110
39
 
111
- GIMS auto-detects configured providers. If none are configured, it uses a local heuristic to generate sensible messages.
40
+ - **Gemini**: `gemini-2.5-flash` (Free, fast, recommended)
41
+ - **OpenAI**: `gpt-5` (High quality)
42
+ - **Groq**: `groq/compound` (Ultra fast)
112
43
 
113
- ### Your First AI Commit
44
+ ## πŸ“– Examples
114
45
 
115
46
  ```bash
116
- # Make some changes to your code
117
- echo "console.log('Hello GIMS!');" > hello.js
47
+ # Daily workflow
48
+ g s # Check what changed
49
+ g i # Interactive commit
50
+ g o # Quick commit + push
118
51
 
119
- # Let AI commit it for you
120
- g o
121
- # Output: Committed & pushed: "Add hello world console log"
52
+ # Advanced
53
+ g sg --multiple # Get 3 AI suggestions
54
+ g h --detailed # Detailed history
55
+ g sync --rebase # Smart sync
122
56
  ```
123
57
 
124
- ## πŸ“– Commands Reference
125
-
126
- | Command | Alias | Description | Example |
127
- |---------|-------|-------------|---------|
128
- | `gims init` | `g i` | Initialize new Git repo | `g i` |
129
- | `gims clone <repo>` | `g c` | Clone repository | `g c https://github.com/user/repo` |
130
- | `gims suggest` | `g s` | Generate & copy commit message from staged changes (use `--all` to stage) | `g s --all` |
131
- | `gims local` | `g l` | AI commit locally | `g l` |
132
- | `gims online` | `g o` | AI commit + push (use `--set-upstream` on first push) | `g o --set-upstream` |
133
- | `gims commit <message...>` | `g m` | Commit with a custom message (no AI) | `g m "fix: handle empty input"` |
134
- | `gims pull` | `g p` | Pull latest changes | `g p` |
135
- | `gims amend` | `g a` | Stage all changes and amend the last commit (reuse message) | `g a` |
136
- | `gims list` | `g ls` | Show numbered commit history | `g ls` |
137
- | `gims largelist` | `g ll` | Detailed commit history | `g ll` |
138
- | `gims branch <n>` | `g b` | Branch from commit #n | `g b 3 feature-x` |
139
- | `gims reset <n>` | `g r` | Reset to commit #n (`--hard` needs `--yes`) | `g r 5 --hard --yes` |
140
- | `gims revert <n>` | `g rv` | Safely revert commit #n (requires `--yes`) | `g rv 2 --yes` |
141
- | `gims undo` | `g u` | Undo last commit (soft reset by default) | `g u` or `g u --hard --yes` |
58
+ ## πŸ”§ Configuration
142
59
 
143
- ### Global Options
144
-
145
- - `--provider <name>`: AI provider: `auto` | `openai` | `gemini` | `groq` | `none`
146
- - `--model <name>`: Override model identifier for the chosen provider
147
- - `--staged-only`: Use only staged changes (default behavior for `g s`)
148
- - `--all`: Stage all changes before running
149
- - `--no-clipboard`: Do not copy suggestion to clipboard (for `g s`)
150
- - `--body`: Generate a commit body in addition to subject
151
- - `--conventional`: Format subject using Conventional Commits
152
- - `--dry-run`: Print what would happen without committing/pushing
153
- - `--verbose`: Verbose logging
154
- - `--json`: Machine-readable output for `g s`
155
- - `--yes`: Confirm destructive actions without prompting (e.g., reset/revert/undo)
156
- - `--amend`: Amend the last commit instead of creating a new one
157
- - `--set-upstream`: On push, set upstream if the current branch has none
158
-
159
- ## πŸ’‘ Real-World Examples
160
-
161
- ### πŸ”§ Bug Fix
162
- ```bash
163
- # You fix a null pointer exception
164
- g o
165
- # AI generates: "Fix null pointer exception in user authentication"
166
- ```
167
-
168
- ### ✨ New Feature
169
60
  ```bash
170
- # You add a search function
171
- g o
172
- # AI generates: "Add search functionality with pagination support"
61
+ g config --set conventional=true # Enable conventional commits
62
+ g config --set autoStage=true # Auto-stage changes
63
+ g config --list # View all settings
173
64
  ```
174
65
 
175
- ### πŸ“š Documentation
176
- ```bash
177
- # You update README and add comments
178
- g o
179
- # AI generates: "Update documentation and add inline code comments"
180
- ```
66
+ ## πŸ†˜ Help
181
67
 
182
- ### 🎨 Refactoring
183
68
  ```bash
184
- # You clean up code structure
185
- g o
186
- # AI generates: "Refactor authentication module for better maintainability"
69
+ g --help # All commands
70
+ g q # Quick reference
187
71
  ```
188
72
 
189
- ## πŸ”₯ Pro Tips
190
-
191
- ### 🎯 Perfect Workflow
192
- ```bash
193
- g p # Pull latest changes
194
- # ... code your features ...
195
- g s # Preview AI suggestion from staged changes
196
- g s --all # Or stage everything and suggest
197
- g l # Commit locally first
198
- # ... test your changes ...
199
- g o --set-upstream # Push with automatic upstream setup on first push
200
- ```
201
-
202
- ### 🧠 Smart Branching
203
- ```bash
204
- g ls # See numbered history
205
- g b 5 hotfix # Branch from commit #5
206
- g l # Make changes and commit
207
- g checkout main && g pull # Back to main
208
- ```
209
-
210
- ### πŸ›‘οΈ Safe Experimentation
211
- ```bash
212
- g l # Commit your experiment
213
- # ... code breaks something ...
214
- g r 1 --soft --yes # Soft reset to previous commit (confirmed)
215
- # ... or ...
216
- g u --yes # Undo last commit (soft)
217
- ```
218
-
219
- ## βš™οΈ Configuration
220
-
221
- ### Environment Variables
222
-
223
- | Variable | Purpose |
224
- |----------|---------|
225
- | `OPENAI_API_KEY` | OpenAI API access |
226
- | `GEMINI_API_KEY` | Google Gemini API access |
227
- | `GROQ_API_KEY` | Groq API access (OpenAI-compatible) |
228
- | `GROQ_BASE_URL` | Groq API base URL (optional) |
229
- | `GIMS_PROVIDER` | Default provider: `auto` | `openai` | `gemini` | `groq` | `none` |
230
- | `GIMS_MODEL` | Default model identifier for provider |
231
- | `GIMS_CONVENTIONAL` | `1` to enable Conventional Commits by default |
232
- | `GIMS_COPY` | `0` to disable clipboard copying in `g s` by default |
233
-
234
- ### .gimsrc (optional)
235
-
236
- Place a `.gimsrc` JSON file in your repo root or home directory to set defaults:
237
-
238
- ```json
239
- {
240
- "provider": "auto",
241
- "model": "gpt-4o-mini",
242
- "conventional": true,
243
- "copy": true
244
- }
245
- ```
246
-
247
- ### Smart Fallbacks
248
-
249
- GIMS handles edge cases gracefully:
250
-
251
- - πŸ”„ Large diffs: Automatically switches to summary or status view
252
- - βœ‚οΈ Massive text: Truncates safely with informative context
253
- - πŸ›œ No API key: Uses a local heuristic that summarizes your changes
254
- - ⚠️ API failures: Clear errors and local fallback so you keep moving
255
- - πŸ”’ Privacy-first: Only sends diffs when you explicitly run AI features
256
-
257
- ## 🀝 Contributing
258
-
259
- We love contributions! Here's how to get involved:
260
-
261
- 1. **🍴 Fork** the repository
262
- 2. **🌿 Create** your feature branch: `git checkout -b amazing-feature`
263
- 3. **πŸ’» Code** your improvements
264
- 4. **πŸ§ͺ Test** thoroughly
265
- 5. **πŸ“ Commit** with GIMS: `g l` (dogfooding!)
266
- 6. **πŸš€ Push** and create a Pull Request
267
-
268
- ### πŸ› Found a Bug?
269
-
270
- 1. Check [existing issues](https://github.com/yourusername/gims/issues)
271
- 2. Create a [new issue](https://github.com/yourusername/gims/issues/new) with:
272
- - Clear description
273
- - Steps to reproduce
274
- - Expected vs actual behavior
275
- - Your environment details
276
-
277
- ## πŸ“Š Why GIMS?
278
-
279
- ### Before GIMS 😫
280
- ```bash
281
- git log --oneline
282
- abc1234 fix
283
- def5678 update
284
- ghi9012 changes
285
- jkl3456 stuff
286
- mno7890 final fix
287
- ```
288
-
289
- ### After GIMS ✨
290
- ```bash
291
- git log --oneline
292
- abc1234 Fix authentication timeout in user login service
293
- def5678 Add responsive design for mobile navigation menu
294
- ghi9012 Refactor database connection pool for better performance
295
- jkl3456 Update API documentation with new endpoint examples
296
- mno7890 Fix memory leak in image processing pipeline
297
- ```
298
-
299
- ## πŸ“ˆ Stats
300
-
301
- - ⚑ Faster commits than traditional Git workflow
302
- - 🎯 High accuracy in commit message relevance
303
- - πŸ“š Zero learning curve - if you know Git, you know GIMS
304
- - 🌍 Works everywhere - Mac, Windows, Linux, WSL
305
-
306
- ## πŸ—ΊοΈ Roadmap
307
-
308
- - [ ] πŸ”Œ Plugin system for custom AI providers
309
- - [ ] πŸ“Š Commit message templates and customization
310
- - [ ] 🌐 Multi-language commit message support
311
- - [ ] πŸ”„ Integration with popular Git GUIs
312
- - [ ] πŸ“± Mobile companion app
313
-
314
73
  ## πŸ“„ License
315
74
 
316
- MIT Β© [Your Name](https://github.com/yourusername)
317
-
318
- ---
319
-
320
- <div align="center">
321
-
322
- **⭐ Star this repo if GIMS makes your Git workflow awesome!**
323
-
324
- [Report Bug](https://github.com/yourusername/gims/issues) β€’ [Request Feature](https://github.com/yourusername/gims/issues) β€’ [Documentation](https://github.com/yourusername/gims/wiki)
325
-
326
- *Made with ❀️ by developers who hate writing commit messages*
327
-
328
- </div>
75
+ MIT Β© [S41R4J](https://github.com/s41r4j)