| Crates.io | noob-commit |
| lib.rs | noob-commit |
| version | 0.7.1 |
| created_at | 2025-06-03 08:52:44.582618+00 |
| updated_at | 2025-06-13 23:58:53.082574+00 |
| description | 🤡 For devs who code like ninjas but commit like toddlers. Stop writing 'fix stuff' commits! How many times did you rush for a new API key or pay that shameful OpenAI bill? No more! |
| homepage | https://github.com/arthrod/noob-commit |
| repository | https://github.com/arthrod/noob-commit |
| max_upload_size | |
| id | 1698778 |
| size | 129,807 |
For developers who code like ninjas but commit like toddlers
How many times have you:
git add before committing?No more! This tool is for developers who are amazing at coding but absolutely terrible at git.
noob-commit automatically:
git add .) - because you always forgetcargo install noob-commit
Or build from source:
git clone https://github.com/arthrod/noob-commit
cd noob-commit
cargo build --release
export OPENAI_API_KEY="your-key-here"
nc alias for ultimate laziness:
noob-commit --setup-alias
Basic usage (does everything for you):
noob-commit
# or if you set up the alias:
nc
Common options:
# See what it would commit without actually doing it
noob-commit --dry-run
# YOLO mode - no confirmations asked
noob-commit --force
# Include .env files (living dangerously)
noob-commit --ok-to-send-env
# Include dependency folders (WARNING: huge repo!)
noob-commit --yes-to-modules
# Include build artifacts (not recommended)
noob-commit --yes-to-crap
# Output the AI advice in Brazilian Portuguese
noob-commit -b
# Just commit, don't push
noob-commit --no-push
# Use a different AI model
noob-commit --model gpt-4.1-nano
# Let me edit the AI's commit message
noob-commit --review
# Limit the git diff size sent to AI (useful for huge diffs)
noob-commit --max-input-chars 10000
# Send full diff without any truncation
noob-commit --max-input-chars 0
# Update to the latest version
noob-commit --update
The lazy developer's workflow:
# Write amazing code
vim src/main.rs
# Commit like a pro with zero effort
nc
The anxious developer's workflow:
# Check what would happen first
nc --dry-run
# Looks good, now do it for real
nc
The perfectionist's workflow:
# Let me review the AI's work
nc --review
Working on a messy project:
# You have node_modules, __pycache__, .env files everywhere
# noob-commit filters them all automatically!
nc
# Output:
# 🛡️ Protecting security file: .env
# 📦 Unstaged dependency folders: node_modules/
# 🗑️ Unstaged cache/build artifacts: __pycache__/
# ✅ Generated perfect commit message for your actual code changes
The "I know what I'm doing" workflow:
# Include EVERYTHING (use with caution!)
nc --ok-to-send-env --yes-to-modules --yes-to-crap
# Get advice in Portuguese (for BR devs)
nc -b
All the knobs you might want to turn:
| Flag | Description | Default |
|---|---|---|
-m, --model |
🧠 AI model to use | gpt-4.1-nano |
-t, --max-tokens |
🤖 How much the AI can ramble (output tokens) | 2000 |
-i, --max-input-chars |
✂️ Maximum characters of git diff to send to AI (0 = unlimited) | 50000 |
-d, --dry-run |
🔍 Just show what would happen | false |
-f, --force |
⚡ Skip confirmations (YOLO mode) | false |
-r, --review |
✏️ Edit AI's message before committing | false |
-e, --ok-to-send-env |
🔓 Include .env files (dangerous!) | false |
-M, --yes-to-modules |
📦 Include dependency folders (huge repo!) | false |
-c, --yes-to-crap |
🗑️ Include build artifacts | false |
-b, --br-huehuehue |
🇧🇷 Output advice in Brazilian Portuguese | false |
-a, --no-f-ads |
🙊 Disable the silly post-commit tagline | false |
-p, --no-push |
📦 Commit but don't push | false |
-s, --setup-alias |
🛠️ Setup 'nc' alias | - |
-u, --update |
🚀 Update noob-commit to the latest version | - |
-v, --verbose |
📢 Increase verbosity (can be used multiple times) | - |
Security Files (use --ok-to-send-env to include):
.env, .env.local, .env.production, etc..npmrc, .pypirccredentials, secrets.yml, secrets.yamlid_rsa, id_ed25519, etc.Dependency Folders (use --yes-to-modules to include):
node_modules/, venv/, .venv/, vendor/bower_components/, jspm_packages/target/ (Rust), Pods/ (iOS), .gradle/ (Android)build/, dist/ (various build systems)Build Artifacts (use --yes-to-crap to include):
__pycache__/, *.pyc, *.pyo.DS_Store, Thumbs.db, desktop.ini*.swp, *.swo, *.swn (editor files)*.log, *.tmp, *.cache, *.bak*.o, *.a, *.class, *.so, *.dllFound a bug? Want to add a feature? PRs welcome! Just remember:
Quantas vezes você:
git add antes do commit?Nunca mais! Esta ferramenta é para devs que são ninjas no código mas crianças no git.
noob-commit automaticamente:
git add .) - porque você sempre esquececargo install noob-commit
Ou compile do código:
git clone https://github.com/arthrod/noob-commit
cd noob-commit
cargo build --release
export OPENAI_API_KEY="sua-chave-aqui"
nc para preguiça máxima:
noob-commit --setup-alias
Uso básico (faz tudo pra você):
noob-commit
# ou se configurou o alias:
nc
Opções comuns:
# Ver o que commitaria sem fazer de verdade
noob-commit --dry-run
# Modo YOLO - sem confirmações
noob-commit --force
# Incluir arquivos .env (vivendo perigosamente)
noob-commit --ok-to-send-env
# Só commitar, não fazer push
noob-commit --no-push
# Usar um modelo de IA diferente
noob-commit --model gpt-4.1-nano
# Deixa eu editar a mensagem da IA
noob-commit --review
# Limitar o tamanho do diff enviado pra IA (útil para diffs gigantes)
noob-commit --max-input-chars 10000
# Enviar o diff completo sem truncar
noob-commit --max-input-chars 0
This project is built upon the excellent foundation of auto-commit by Miguel Piedrafita.
The original auto-commit was a brilliant tool for AI-powered commit messages. noob-commit extends it with:
git add)Huge thanks to Miguel for creating the original tool and providing such a solid foundation! 🎉
Stop being a noob at git. Be a noob with style! 🎭