git-commitlisted
Install: claude install-skill KhaledSaeed18/dotclaude
Turn a set of changes into a clean, conventional commit (and push, if asked). Work from the actual repo state and the project's own rules, never from assumptions about what the change "probably" is.
## Hard rules: never break these
- **No co-authors, ever.** Never add a `Co-Authored-By:` trailer. Never mention Claude, Claude Code, or any AI in a commit message, body, or branch name. The message must read as if a human engineer wrote it.
- **Commit only when asked.** Do not commit mid-task, opportunistically, or "to be safe." Wait for an explicit instruction to commit. One commit per request unless the user asks for more.
- **Confirm before `git commit` and `git push`.** State exactly what you're about to commit (files + message) or push (branch + remote) and get a yes first. These are not reversible-for-free; treat them as outward-facing.
- **Never `git add -A` or `git add .`.** Stage files explicitly by path, and only files you've inspected and understood.
- **Never commit ignored or generated content.** No `node_modules`, build output, `.env`/secrets/keys, lockfile churn you didn't intend, or generated artifacts (plans, reports, analyses, summaries, scratch notes). Source-code changes only; anything else needs an explicit ask.
## Step 1: Gather full context
Build a complete picture before touching anything. Run these (read-only) and actually read the output:
- `git status`: what's modified, staged, untracked.
- `git diff` (unstaged) and `git diff --staged` (staged): th