plugins/dev-workflow/skills-codex/committing-code/SKILL.md
Smart git commits with logical grouping. Use when user says "commit", "commit changes", "save changes", "create commit", "bundle commits", "git commit", or wants to commit their work.
npx skillsauth add alexei-led/claude-code-config committing-codeInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Group changed files logically into focused, atomic commits.
Scope: only inspect changes, group them, and create normal commits. Do not rewrite history, amend existing commits, force-push, or stage secrets. Include relevant git status, git diff, and git log output in the proposal.
Any commit plan must explicitly say the first inspection commands are git status --short, git diff --stat HEAD, git diff HEAD, and git log --oneline -8. Any commit summary must include a final git status --short plus recent git log --oneline -n <created> output.
Run in parallel before any commit:
git status --short
git diff --stat HEAD
git diff HEAD
git log --oneline -8
If no changes: Say "Nothing to commit" → stop.
Group files by: feature (impl+tests), fix (bug+test), refactor, docs, config
Match commit style from recent history.
Present proposed commits:
Proposed commits:
1. feat: add user validation
- src/validate.ts
- src/validate_test.ts
2. docs: update README
- README.md
Never stage files matching .env, *.pem, *credentials*, or *secret*. Flag to user if detected in changes. Safe source/test files may still be grouped and committed separately after approval.
For each group, run git add + commit.
User will be prompted to approve each write operation (git add/commit not pre-allowed).
Run final checks and show the result:
git status --short
git log --oneline -n <number-of-created-commits>
Summarize commits created and any remaining uncommitted files.
tools
Use when planning, executing, checkpointing, finishing, or inspecting lightweight spec-driven work. Runs one task at a time using `.spec/` markdown files and the bundled `specctl` helper. NOT for broad product discovery beyond a short requirement interview. NOT for generic implementation planning that does not read or write `.spec/` files.
development
Simple web development with HTML, CSS, JS, and HTMX. Use when working with .html, .css, or .htmx files, web templates, stylesheets, or vanilla JS scripts. NOT for React/Vue/Angular (use writing-typescript) or Node.js backends.
tools
Idiomatic TypeScript development. Use when writing TypeScript code, Node.js services, React apps, or TypeScript design advice. Emphasizes strict typing, boundary validation, composition, fast feedback, behavior tests, and project-configured tooling. NOT for Go, Python, Rust, plain HTML/CSS/JS, or server-rendered templates (use writing-web).
tools
Idiomatic shell development for POSIX sh, Bash, Zsh, Fish, hooks, CI shell steps, and scriptable CLI glue. Use when writing or changing `.sh`, `.bash`, `.zsh`, `.fish`, `.bats`, shell functions, shell pipelines, CI `run:` shell bodies, or command-runner recipes. Emphasizes portability, quoting, safe filesystem/process handling, non-TUI CLI tools, ShellCheck, shfmt, Bats, and ShellSpec. NOT for Python, Rust, TypeScript, Go, web code, or GitHub Actions workflow/job/permissions semantics; use operating-infra.