commitlisted
Install: claude install-skill oprogramadorreal/optimus-claude
# Commit
Stage, commit, and optionally push local changes with a conventional commit message. Commits on the current branch — or, if the current branch is protected, offers to create a feature branch automatically.
## Workflow
### 1. Gather Change Context
Read `$CLAUDE_PLUGIN_ROOT/skills/commit/references/gather-changes.md` and follow the procedure (multi-repo detection + git commands).
### 2. Analyze Changes and Generate Conventional Commit Message
Read `$CLAUDE_PLUGIN_ROOT/skills/commit-message/references/conventional-commit-format.md` and follow its instructions to analyze the gathered changes and generate a conventional commit message.
If changes span multiple concerns, use `AskUserQuestion` to ask whether to commit everything together or split into separate commits. If splitting, process each commit separately through steps 3–7.
In a multi-repo workspace, process each repo with changes through steps 2–7 independently.
### 3. Handle Untracked Files
If `git status --short` shows untracked files (`??`):
- List them for the user
- Warn about any that look like secrets (`.env`, `*.key`, `*.pem`, `*.pfx`, `credentials.*`, `secrets.*`, `*.sqlite`, `*.db`)
- Use `AskUserQuestion` — header "Untracked files", question "Include these untracked files in the commit?":
- **"Include all"** — stage all untracked files
- **"Exclude all"** — stage only tracked files with changes
- **"Let me choose"** — present each file individually
### 4. Branch and Push-Safety Check
Ge