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
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
4
+
5
+
## Project Overview
6
+
7
+
GIMS (Git Made Simple) is an AI-powered Git CLI tool that automatically generates meaningful commit messages from code changes. It's a Node.js package published to npm that integrates with OpenAI GPT-4 and Google Gemini APIs.
8
+
9
+
## Architecture
10
+
11
+
-**Single-file CLI**: All functionality is contained in `bin/gims.js`
12
+
-**AI Integration**: Supports both OpenAI and Google Gemini APIs with intelligent fallback strategies
13
+
-**Git Wrapper**: Built on top of `simple-git` library for Git operations
14
+
-**Token Management**: Implements sophisticated content chunking to handle large diffs within AI token limits
15
+
16
+
## Key Components
17
+
18
+
-**Command System**: Uses `commander.js` for CLI argument parsing with aliases (e.g., `g o` for `gims online`)
19
+
-**AI Message Generation**: Multi-strategy approach that falls back from full diff → summary → status → truncated content
20
+
-**Commit Resolution**: Supports both commit hashes and numbered indices for referencing commits
21
+
-**Safe Operations**: Includes error handling for empty repositories and edge cases
22
+
23
+
## Environment Setup
24
+
25
+
Required environment variables (at least one):
26
+
-`OPENAI_API_KEY` - For OpenAI GPT-4o-mini integration
27
+
-`GEMINI_API_KEY` - For Google Gemini 2.0 Flash integration
28
+
29
+
## Common Commands
30
+
31
+
-**Install globally**: `npm install -g .`
32
+
-**Test locally**: `node bin/gims.js --help`
33
+
-**Test specific command**: `node bin/gims.js suggest`
34
+
-**Run with alias**: `g o` (after global install)
35
+
36
+
## Development Notes
37
+
38
+
- No test framework is currently configured (package.json shows placeholder test script)
0 commit comments