commit

commit commits ALL uncommitted changes to local git history — packages first, then main project. Does NOT push to any remote. Run push when ready to publish.

The working tree must be CLEAN after this command returns — including pre-existing dirty files from before the current session. No orphaned changes left behind.


Workflow

StepAction
0. Code review gateRun refactor (Mode B) + the simplify skill on every staged + unstaged file. Skipping = violation of the hard rule in CLAUDE.md
0.1Update CHANGELOG.md in every dirty repo. Bump patch, today's date, category tags: [NEW FEATURE] / [BUG FIX] / [IMPROVED] / [SECURITY] / [DEPENDENCIES]. Group under ### Features / ### Fixes / ### Improvements
0.2Update README.md in every dirty repo if the changes touch public API / commands / config / installation. Report "README: already accurate" if no update needed
0.3Export Guidelines (homer / jarvis only) — php artisan agent:export-guidelines
1. Detect path packagesFind every "type": "path" repository in composer.json
2. Commit packages first (in composer.json order)For each dirty package: update its CHANGELOG, then git add -A && git commit. No push
3. Commit main projectStage everything (incl. files generated by Step 0.x) and git commit. No push
4. ReportShow what landed where; make it obvious nothing was pushed

Commit message format

For feature/fix:

Fix: Resolve validation issue in form submission

- Added proper email validation
- Fixed edge case with empty fields

Co-Authored-By: Claude <[email protected]>

For WIP snapshots:

WIP: 2025-01-24 22:35

Co-Authored-By: Claude <[email protected]>

Hard rules

  • No pushing, ever. That's push.
  • Never skip hooks (--no-verify). Hook fails → fix root cause.
  • Never commit files that likely contain secrets (.env, credentials.json). Explicit warning if Bruno requests it.
  • Never auto-amend. Always a NEW commit per run. Amending pushed commits is destructive; amending a hook-failed commit re-introduces the wrong tree state.
  • Never leave any repo broken. If a commit fails mid-chain (package committed, main project commit fails), STOP and report. Do NOT roll forward to push.