https://github.com/olllayor/aicom
One command to commit with AI-generated message. No prompts, no copy-paste, just commit.
https://github.com/olllayor/aicom
ai bun commit nodejs npm npm-package pnpm typescript
Last synced: 5 months ago
JSON representation
One command to commit with AI-generated message. No prompts, no copy-paste, just commit.
- Host: GitHub
- URL: https://github.com/olllayor/aicom
- Owner: olllayor
- License: mit
- Created: 2025-10-01T13:17:03.000Z (9 months ago)
- Default Branch: master
- Last Pushed: 2025-10-02T07:06:14.000Z (9 months ago)
- Last Synced: 2025-10-02T09:05:38.910Z (9 months ago)
- Topics: ai, bun, commit, nodejs, npm, npm-package, pnpm, typescript
- Language: TypeScript
- Homepage: https://www.npmjs.com/package/aicom
- Size: 29.3 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# 🤖 AIcom - AI-Powered Git Commit
One command to commit with AI-generated message. No prompts, no copy-paste, just commit.
## 🚀 Quick Start
### Installation
```bash
npm install -g aicom
# or
pnpm add -g aicom
```
### Setup
Get a free API key from [OpenRouter](https://openrouter.ai/keys) and set it:
```bash
export OPENROUTER_API_KEY=your_key_here
# The tool will store this key in ~/.aicom/config.json automatically
# Add to ~/.zshrc or ~/.bashrc if you prefer keeping it in your shell too
```
The API key will be automatically saved to `~/.aicom/config.json` for future use.
### Usage
```bash
git add .
aicom
```
That's it! AI generates the commit message and commits automatically.
## 📝 Example
```bash
$ git add src/auth.ts
$ aicom
git commit -m "feat: add JWT authentication to user service" (Press Enter to commit)
# [User presses Enter]
[main abc1234] feat: add JWT authentication to user service
1 file changed, 45 insertions(+), 3 deletions(-)
```
Simple: See the message, press Enter, done!
## 🎯 How It Works
1. **Checks Git Status** - Verifies you're in a git repo with staged changes
2. **Fetches Free Model** - Automatically finds an available free model from OpenRouter
3. **Analyzes Changes** - Gets the git diff of your staged changes
4. **Generates Message** - Uses AI to create a conventional commit message
5. **Outputs Command** - Displays the ready-to-run git commit command
## 🔧 Features
- ✅ **One command commit** - Just run `aicom`, press Enter, done
- ✅ Shows the commit message before executing
- ✅ AI-generated messages using free OpenRouter models
- ✅ Conventional commit format (feat:, fix:, docs:, etc.)
- ✅ Analyzes git diffs for context
- ✅ Zero configuration needed (just API key)
- ✅ Press Enter to confirm
- ✅ Zero runtime dependencies
- ✅ Small package size (~6.7 kB)
## 🛠️ Development
### Local Development
```bash
# Clone the repository
git clone https://github.com/yourusername/aicom.git
cd aicom
# Install dependencies
npm install
# Build
npm run build
# Test locally
npm run dev
```
### Build for Production
```bash
npm run build
```
### Publishing
```bash
# Login to npm
npm login
# Publish
npm publish
# or with pnpm
pnpm publish
```
## 📦 Configuration
API keys can be provided in two ways:
1. Environment variable: `OPENROUTER_API_KEY`. When present, `aicom` saves it to `~/.aicom/config.json` so future sessions can reuse it automatically.
2. Config file: `~/.aicom/config.json`. You can edit this file directly if you need to rotate keys or switch accounts.
## 💡 Tips
- The API key is automatically saved after first use - no need to export it every time
- Optionally add `export OPENROUTER_API_KEY=your_key` to `~/.zshrc` or `~/.bashrc` if you prefer
- The tool automatically uses free models from OpenRouter
- Follows conventional commit best practices
- Works silently - only shows git's commit output
- If you need to edit before committing, use `git commit --amend`
## 🤝 Contributing
This is a simple starter project. Feel free to:
- Implement streaming responses
- Create better UI components
- Add custom templates
- Improve error handling
- Add commit message history
## 📄 License
MIT