commitlisted
Install: claude install-skill kborovik/pilot-skills
Commit staged changes w/ well-crafted message.
## Process
1. **Check staged changes:**
- `git diff --cached --stat` → see what staged
- ⊥ staged → inform user ∧ exit
- $ARGUMENTS provided → use as hint
2. **Analyze changes:**
- `git diff --staged` → review
- Identify added / modified / removed
- Understand purpose ∧ scope
3. **Check repo style:**
- `git log --oneline --max-count=10` → recent patterns
- Match existing style (prefixes, capitalization, format)
4. **Generate message:**
- Title: Conventional Commits → `type(area): concise imperative description`
- **type**: `fix`, `feat`, `refactor`, `chore`, `docs`, `test`
- **area**: affected module (e.g. `<area>`)
- Title ≤ 72 chars
- Complex changes → body after blank line
5. **Create commit:**
- Heredoc → preserves formatting:
```
git commit --message "$(cat <<'EOF'
<title>
<optional body>
EOF
)"
```
6. **Verify:**
- `git status` → confirm clean state
- `git log --max-count=1` → show created commit
## Commit message format
Simple:
```
fix(server): add validation for email input
```
With body:
```
refactor(server): replace session-based auth with JWT tokens
- Replace session-based auth with JWT
- Add token refresh endpoint
- Update middleware to validate tokens
- Add tests for token expiration
```
## Write-time glyph gate
Pre-publish: `rg --pcre2 '[∀∃∴⊥∈∉∧∨≤≥≠≡¬]' <body>` on commit body before §5 `git commit`; match → bail ∧