From ecc
Stages Git files via natural language (e.g., 'auth changes'), globs (e.g., '*.ts'), or keywords (e.g., 'except tests'), crafts conventional commit message, and commits. Blank stages all.
npx claudepluginhub alamator/everything-can[target description] (blank = all changes)# Smart Commit > Adapted from PRPs-agentic-eng by Wirasm. Part of the PRP workflow series. **Input**: $ARGUMENTS --- ## Phase 1 — ASSESS If output is empty → stop: "Nothing to commit." Show the user a summary of what's changed (added, modified, deleted, untracked). --- ## Phase 2 — INTERPRET & STAGE Interpret `$ARGUMENTS` to determine what to stage: | Input | Interpretation | Git Command | |---|---|---| | *(blank / empty)* | Stage everything | `git add -A` | | `staged` | Use whatever is already staged | *(no git add)* | | `*.ts` or `*.py` etc. | Stage matching glob | `git add '*...
/prp-commitStages Git files via natural language (e.g., 'auth changes'), globs (e.g., '*.ts'), or keywords (e.g., 'except tests'), crafts conventional commit message, and commits. Blank stages all.
/prp-commitStages files matching natural language target (patterns, exclusions, all/staged/new), generates imperative commit message, and commits. Outputs commit details with file stats.
/commitCommits git changes with auto-generated Conventional Commits semantic message. Analyzes diffs, optionally stages unstaged files, confirms message, executes commit, and offers to push. Accepts optional custom message.
/commitAnalyzes git changes to generate conventional commit messages, stages files appropriately, runs pre-commit checks like linting and tests, and creates atomic commits.
/commit-smartAnalyzes staged Git changes to generate a conventional commit message (type(scope): description), confirms with user, and commits if approved.
/commitAnalyzes staged git changes, generates a conventional commit message, seeks user approval, and executes the commit without trailers.
Share bugs, ideas, or general feedback.
Adapted from PRPs-agentic-eng by Wirasm. Part of the PRP workflow series.
Input: $ARGUMENTS
git status --short
If output is empty → stop: "Nothing to commit."
Show the user a summary of what's changed (added, modified, deleted, untracked).
Interpret $ARGUMENTS to determine what to stage:
| Input | Interpretation | Git Command |
|---|---|---|
| (blank / empty) | Stage everything | git add -A |
staged | Use whatever is already staged | (no git add) |
*.ts or *.py etc. | Stage matching glob | git add '*.ts' |
except tests | Stage all, then unstage tests | git add -A && git reset -- '**/*.test.*' '**/*.spec.*' '**/test_*' 2>/dev/null || true |
only new files | Stage untracked files only | git ls-files --others --exclude-standard | grep . && git ls-files --others --exclude-standard | xargs git add |
the auth changes | Interpret from status/diff — find auth-related files | git add <matched files> |
| Specific filenames | Stage those files | git add <files> |
For natural language inputs (like "the auth changes"), cross-reference the git status output and git diff to identify relevant files. Show the user which files you're staging and why.
git add <determined files>
After staging, verify:
git diff --cached --stat
If nothing staged, stop: "No files matched your description."
Craft a single-line commit message in imperative mood:
{type}: {description}
Types:
feat — New feature or capabilityfix — Bug fixrefactor — Code restructuring without behavior changedocs — Documentation changestest — Adding or updating testschore — Build, config, dependenciesperf — Performance improvementci — CI/CD changesRules:
git commit -m "{type}: {description}"
Report to user:
Committed: {hash_short}
Message: {type}: {description}
Files: {count} file(s) changed
Next steps:
- git push → push to remote
- /prp-pr → create a pull request
- /code-review → review before pushing
| You say | What happens |
|---|---|
/prp-commit | Stages all, auto-generates message |
/prp-commit staged | Commits only what's already staged |
/prp-commit *.ts | Stages all TypeScript files, commits |
/prp-commit except tests | Stages everything except test files |
/prp-commit the database migration | Finds DB migration files from status, stages them |
/prp-commit only new files | Stages untracked files only |