Our review
Generates concise commit messages conforming to project conventions after automatically staging all changes and running pre-commit checks (formatting, linting, tests).
Strengths
- Ensures consistent commit message style
- Automates pre-commit verification
- Stages all changes automatically
- Uses imperative mood without conventional commit prefixes
Limitations
- Requires a Rust/Cargo project structure
- Cannot handle complex merge commits or interactive rebases
- Limited to specific toolchain (cargo fmt, clippy, test)
Use when committing changes in a Rust project that follows standard formatting and linting practices.
Do not use for non-Rust projects, or when you need to selectively stage files or write longer, more detailed commit bodies.
Security analysis
CautionThe skill uses powerful shell commands (git, cargo) for code quality enforcement and automated committing. While not destructive, it could stage unintended files or commit without user review, posing a moderate risk of accidental exposure or bad commits.
- •Automatically stages all changes with `git add -A`, potentially including unintended files.
- •Commits immediately after checks pass without user confirmation, which could inadvertently commit sensitive data.
Examples
Commit all my changes with the message following the project convention.I have some unstaged changes. Run the pre-commit checks and commit everything.Stage all changes, fix any clippy warnings, and commit.name: commit description: Generate commit messages following project conventions. Use when committing changes or reviewing staged files. allowed-tools: Bash(git:*), Bash(cargo *), Read, Edit, Glob, Grep
Commit Message Generator
Instructions
- Run
git statusto check for all changes (staged, unstaged, untracked) - If there are unstaged or untracked files, run
git add -Ato stage all changes - Run
git diff --stagedto see what will be committed - If no changes to commit, inform the user and stop
Pre-commit Checks
-
Run lint and test checks before committing:
- Run
cargo fmt --checkto check formatting - Run
cargo clippy -- -D warningsto check for lint errors - Run
cargo testto run tests
- Run
-
If any checks fail:
- For formatting issues: Run
cargo fmtto auto-fix - For clippy warnings: Read the affected files and fix the issues
- For test failures: Investigate and fix the failing tests
- After fixes, run
git add -Ato stage the fixes - Re-run the failed checks to verify fixes
- For formatting issues: Run
-
Once all checks pass, generate a commit message following the rules below
-
Run
git commit -m "message"immediately (no confirmation needed)
Format
- Line 1: Summary (max 50 chars, imperative mood)
- Line 2: Blank
- Line 3+: Description (optional, explain what and why)
Rules
- Write in English
- Use imperative mood: "Add", "Fix", "Change" (not "Added", "Fixed")
- NO prefixes like feat:, fix:, docs:
- Be specific, avoid vague messages
Examples
❌ Bad
- Fix
- Bug fix
- Various changes
✅ Good
- Change audio capture buffer size to 20ms
- Add retry logic for P2P connection failures
- Remove unused audio codec parameters
Next.js App Router Expert
Development
A skill that turns Claude into a Next.js App Router expert.
README Generator
Development
Creates professional and comprehensive README.md files for your projects.
API Documentation Writer
Development
Generates comprehensive API documentation in OpenAPI/Swagger format.