← ClaudeAtlas

git-commit-splitlisted

Explicit `/git-commit-split` workflow for organizing an already-dirty working tree into multiple intent-grained commits, optionally pairing each commit with its own branch and PR. Use only when invoked as the custom command or when the user explicitly asks to split pending changes, create one feature per commit, or create one PR per feature. General branch naming, commit granularity, and Conventional Commits rules live in git-workflow; this command owns mode selection, dirty-tree inspection, hunk splitting, plan approval, and execution.
furedea/agent-harness · ★ 1 · Code & Development · score 67
Install: claude install-skill furedea/agent-harness
Mode argument from slash-command invocation (empty if none was passed): $ARGUMENTS # `/git-commit-split` custom command This command is for a dirty working tree that already contains multiple uncommitted intents. It inspects everything pending, proposes a split plan, waits for approval, then lands one commit per approved intent. Optionally each commit can be packaged into its own branch and PR. Day-to-day implementation workflow belongs to `git-workflow`. Do not use this command as the default answer to a normal "implement/fix/refactor" request. The work happens in four phases: **mode → inspect → plan → execute**. This file owns mode/inspect/plan and routes execute to a mode-specific reference. Show the plan and wait for explicit user approval before any branch or commit lands. ## Files in this command - `references/hunk_split.md`: zero-context partial-apply technique — read whenever a commit splits one file's hunks across commits, in either mode. - `references/direct_execute.md`: Phase 3 for `direct` mode. - `references/pr_per_feature_execute.md`: Phase 3 for `pr-per-feature` mode (covers both `independent` and `stack`). - `scripts/build_partial_patch.py`: filter a unified diff to a subset of hunks. - `scripts/branch_name.py`: generate a kebab-case branch slug from a Conventional Commits subject, with optional collision avoidance against local + `origin`. ## Phase 0 — Mode selection The first decision is _where_ the commits will live. There are exactly two delivery m