| name | commit-split |
| description | Inspect all changed files, group by logical concern, and guide atomic per-concern commits |
Commit Split
Analyze changed files and propose atomic commits grouped by concern.
Step 1: Gather Changes
git status --short
git diff --name-only
git diff --staged --name-only
git ls-files --others --exclude-standard
Step 2: Classify Files
| Type | Pattern |
|---|
| feature | Main/Features/<name>/ |
| adapter | Main/Adapters/ |
| model | Main/Models/ |
| service | Main/Services/ |
| behavior | Main/CampaignBehaviors/ |
| test | LOTRAOM.Tests/ |
| config | ModuleData/, *.xml |
| launcher | launcher/ |
| server | launcher/server/ |
| devops | devops/ |
| docs | *.md, docs/ |
| build | build.ps1, *.csproj, Directory.Build.props |
| chore | .claude/, .vscode/, .editorconfig |
Step 3: Propose Commits
Type prefix + scope + message (50/72 rule):
feat(momentum): add party momentum decay calculation
fix(alliance): correct racial enmity check for dwarves
test(momentum): add decay rate unit tests
docs: update feature-index with momentum system
Step 4: Execute (with approval)
For each group: git add <files> then git commit.
Important
- Confirm grouping with user before committing
- Never batch unrelated changes