
Company News
Jerod Santo Joins Socket as Head of Media
Allow myself to introduce... myself.
@viccalexander/smart-commit
Advanced tools
CLI-first AI commit messages. Git stays in the terminal.
Smart Commit uses AI to write clean, consistent, and professional commit messages so you can stay in flow. 🌊
Get up and running in seconds. No complex configuration required.
# 1. Install globally
npm install -g @viccalexander/smart-commit
# 2. Run it (first time walks you through setup)
git smart-commit
Whether you are vibe coding a side project or shipping production systems, Smart Commit keeps your Git history clean across iOS, frontend, backend, and everything in between.
It works just as well for Swift, JavaScript, Python, Go, Rails, infra repos, or monorepos 🫠.
Smart Commit acts as a smart wrapper around your staging and committing process:
The Result: ✨ PROJ-123: Add intelligent retry logic to API client
- Implemented exponential backoff
- Added circuit breaker pattern
vicc-123)prefix-number format-e flag)-y flag)--dry-run)git smart-commit or smart-commit--help flag for documentation--uninstall with smart detection| Method | Command |
|---|---|
| npm (Best) | npm install -g @viccalexander/smart-commit |
| Homebrew | brew tap vicc/tap && brew install smart-commit |
| Manual | curl -o ~/bin/git-smart-commit https://raw.githubusercontent.com/vicc/smart-commit/main/bin/git-smart-commit |
The first time you run git smart-commit, a friendly wizard will help you:
llm CLI tool (automatic).gpt-4o-mini or claude-3-haiku).Need to change something later?
smart-commit --setup
/smart-commitUse smart-commit inside Codex CLI without keeping this repo around.
Install:
git clone https://github.com/vicc/smart-commit.git
cd smart-commit
codex skills install dist/smart-commit.skill
Use:
git add ...) in any git repo./smart-commit.git commit -m "<message>".Once installed, you can delete the repo—the skill stays available in Codex. Releases also include the .skill file for direct download.
| Command | Action |
|---|---|
git smart-commit | The Standard: Preview, then confirm. |
git smart-commit -y | The Speedrun: Commit immediately without asking. |
git smart-commit -e | The Perfectionist: Open in editor before saving. |
git smart-commit --dry-run | The Lurker: See the message without committing. |
We follow a consistent style to make your git log look like a work of art:
Got an idea to make it even better? Feel free to open an issue or submit a PR!
Philosophy: Good commit history is a love letter to future you or rather less of a FU to future you. 💌
Smart Commit itself is free and open source. You'll need an API key for cloud LLM providers:
Only file names and diff summaries are sent - not your actual code content. Smart Commit uses git diff --name-status to see what changed, which shows:
M src/components/Button.tsx
A src/utils/helpers.ts
The LLM sees file names and change types (Modified, Added, Deleted), never your source code.
Yes! Since only file names are sent (not code), it's safe for private repos. For extra security, use Ollama with local models.
Run the setup wizard again:
smart-commit --setup
Or manually:
llm keys set openai # Switch provider
llm models default gpt-4o # Change model
Currently, the format is fixed (emoji + subject + optional bullets). You can:
-e flag to edit messages before committing--dry-run to preview and copy messagesThe emoji-based format is different from conventional commits (feat:, fix:, etc.). The emojis serve a similar purpose but are more visual. You can manually edit messages to conventional commit format using -e.
-y flag to speed up workflow once you trust the output.Not recommended. Smart Commit is designed for interactive use with preview/confirmation. For CI/CD, write commit messages in your scripts.
npm:
npm update -g @viccalexander/smart-commit
Homebrew:
brew update
brew upgrade smart-commit
API keys are stored by the llm tool in ~/.config/llm/keys.json. They're never sent anywhere except to your chosen LLM provider.
The llm tool supports one key per provider. To switch between accounts, run llm keys set <provider> to overwrite the stored key.
Just use regular git commands:
git add .
git commit -m "Your message"
Smart Commit is optional - it doesn't replace or modify git's behavior.
MIT © Vicc Alexander 2026
FAQs
LLM-powered git commit message generator
The npm package @viccalexander/smart-commit receives a total of 6 weekly downloads. As such, @viccalexander/smart-commit popularity was classified as not popular.
We found that @viccalexander/smart-commit demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.

Company News
Allow myself to introduce... myself.

Research
/Security News
A Twitch browser extension on Chrome and Firefox forwards users’ live OAuth session tokens through proxies controlled by a Russian bot service.

Security News
Anthropic found biased reasoning and recklessness drove Claude Mythos 5 to publish malware on PyPI and compromise a security vendor.