git_twiddle_commits
Rewrites commit messages in a specified range to fix wording issues, applying changes automatically or returning previews for review.
Instructions
Generate improved commit messages for a range (e.g. HEAD~3..HEAD) and (by default) apply them. Mutating: rewrites commit messages unless dry_run = true. Use this to fix messages; use git_check_commits instead to only report problems without modifying anything. Mirrors omni-dev git commit message twiddle --auto-apply. Set dry_run = true to return the proposed amendments as YAML without applying them. The editor is never started from this tool. Commits already contained in a remote main branch are refused (rewriting published history); overriding requires a human running omni-dev git commit message amend --allow-pushed from the CLI.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| model | No | Claude model override (e.g. `claude-sonnet-4-6`). Defaults to the model from settings, then the built-in default, when omitted. | |
| range | No | Commit range to twiddle (e.g., `HEAD~3..HEAD`, `abc123..def456`). Defaults to `HEAD~5..HEAD` when omitted. | |
| dry_run | No | When true, proposed amendments are returned without being applied. When false (or omitted), amendments are applied automatically — the MCP boundary is non-interactive and therefore forces `--auto-apply` semantics; no editor is started. | |
| repo_path | No | Path to the git repository. Defaults to the current working directory. |