You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CommitLoom evolved from my personal script that I was tired of copying across different projects. Its predecessor, GitMuse, was my experiment with local models like Llama through Ollama, but I couldn't achieve the consistent, high-quality results I needed. The rise of cost-effective OpenAI models, particularly gpt-4o-mini, made it possible for me to create a more reliable and powerful tool.
@@ -77,6 +116,15 @@ Key improvements over GitMuse:
77
116
- Enhanced error handling and user experience
78
117
- Improved binary file handling
79
118
119
+
### Recent Major Updates
120
+
121
+
**v1.6.0+ (2024)**: Introduced intelligent file grouping and performance improvements:
122
+
-**Smart File Grouping**: Advanced semantic analysis for better commit organization
123
+
-**UV Package Manager Support**: Migrated from Poetry to UV for 10-100x faster dependency management
124
+
-**Enhanced CLI**: New `-s/--smart-grouping` and `--no-smart-grouping` options
125
+
-**Improved Error Handling**: Better JSON parsing and metrics collection
126
+
-**Performance Optimizations**: Reduced logging verbosity and duplicate messages
127
+
80
128
## ⚙️ Configuration
81
129
82
130
CommitLoom offers multiple ways to configure your API key and settings:
@@ -102,17 +150,26 @@ cl [command] [options]
102
150
103
151
-`-y, --yes`: Auto-confirm all prompts (non-interactive mode)
104
152
-`-c, --combine`: Combine all changes into a single commit
-`--no-smart-grouping`: Disable smart grouping and use simple batching
105
155
-`-d, --debug`: Enable debug logging
156
+
-`-m, --model`: Specify the AI model to use (e.g., gpt-4.1-mini)
106
157
107
158
#### Usage Examples
108
159
109
160
```bash
110
-
# Basic usage (interactive mode)
161
+
# Basic usage (interactive mode with smart grouping)
111
162
loom
112
163
113
164
# Non-interactive mode with combined commits
114
165
loom -y -c
115
166
167
+
# Use smart grouping with specific model
168
+
loom -s -m gpt-4.1
169
+
170
+
# Disable smart grouping for simple batching
171
+
loom --no-smart-grouping
172
+
116
173
# View usage statistics
117
174
loom stats
118
175
@@ -209,14 +266,14 @@ While local models like Llama are impressive, my experience with GitMuse showed
209
266
210
267
### How much will it cost to use CommitLoom?
211
268
212
-
With the default gpt-4o-mini model, costs are very low:
213
-
- Input: $0.15 per million tokens
214
-
- Output: $0.60 per million tokens
269
+
With the default gpt-4.1-mini model, costs are very low:
270
+
- Input: $0.40 per million tokens
271
+
- Output: $1.60 per million tokens
215
272
216
273
For perspective, a typical commit analysis:
217
274
- Uses ~1,000-2,000 tokens
218
-
- Costs less than $0.002 (0.2 cents)
219
-
- That's about 500 commits for $1
275
+
- Costs less than $0.004 (0.4 cents)
276
+
- That's about 250 commits for $1
220
277
221
278
This makes it one of the most cost-effective tools in its category, especially when compared to the time saved and quality of commit messages generated.
222
279
@@ -250,20 +307,34 @@ For detailed documentation on the metrics system, see the [Usage Metrics Documen
250
307
251
308
CommitLoom automatically:
252
309
1. Analyzes the size and complexity of changes
253
-
2. Warns about potentially oversized commits
254
-
3. Suggests splitting changes when appropriate
255
-
4. Maintains context across split commits
256
-
5. Optionally creates a new branch when commits are very large
310
+
2. Uses smart grouping to organize related files together
311
+
3. Warns about potentially oversized commits
312
+
4. Suggests splitting changes when appropriate
313
+
5. Maintains context across split commits
314
+
6. Optionally creates a new branch when commits are very large
315
+
316
+
### What is smart grouping and how does it work?
317
+
318
+
Smart grouping is CommitLoom's advanced semantic analysis feature that intelligently organizes your changed files:
319
+
320
+
-**Detects relationships**: Groups test files with their implementation files, components with their styles, etc.
321
+
-**Understands change types**: Identifies whether changes are features, fixes, documentation, tests, or refactoring
322
+
-**Semantic analysis**: Goes beyond directory structure to understand what files actually work together
323
+
-**Automatic by default**: Enabled automatically in v1.6.0+, but can be disabled with `--no-smart-grouping`
324
+
325
+
This results in more logical commits where related files are grouped together, making your git history cleaner and more meaningful.
257
326
258
327
## 🛠️ Development Status
259
328
260
-
- ✅ **CI/CD**: Automated testing, linting, and publishing
329
+
- ✅ **CI/CD**: Automated testing, linting, and publishing with GitHub Actions
330
+
- ✅ **Package Management**: Migrated to UV for faster dependency resolution and builds
0 commit comments