Skip to main content
Glama

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

TableJSON Schema
NameRequiredDescriptionDefault
modelNoClaude model override (e.g. `claude-sonnet-4-6`). Defaults to the model from settings, then the built-in default, when omitted.
rangeNoCommit range to twiddle (e.g., `HEAD~3..HEAD`, `abc123..def456`). Defaults to `HEAD~5..HEAD` when omitted.
dry_runNoWhen 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_pathNoPath to the git repository. Defaults to the current working directory.
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries full burden. It fully discloses that the tool rewrites commit messages (mutation), that it's non-interactive (no editor started), that it forces auto-apply unless dry_run=true, and that it refuses rewriting published history. This is comprehensive.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is concise yet thorough. The first sentence states the core action and default behavior. Subsequent sentences add critical context (sibling alternative, command mirror, dry_run effects, editor behavior, refusal conditions). No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema is provided, but the description explains the two outcomes (commit messages rewritten or YAML returned when dry_run=true). It covers all relevant behavioral aspects: mutation, default range, refusal of published commits, and underlying command. The agent has enough to decide correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3. The description adds significant value beyond schema: default range (HEAD~5..HEAD), auto-apply semantics, and the refusal of published commits. It also explains model override defaults. Thus a 4 is warranted.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states the tool generates improved commit messages for a range and applies them by default. It distinguishes from the sibling git_check_commits by noting that this tool fixes messages while the other only reports problems.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly tells when to use this tool (to fix messages) and when to use the alternative git_check_commits (to only report problems). Also explains dry_run behavior and the refusal of commits on remote main branches.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rust-works/omni-dev'

If you have feedback or need assistance with the MCP directory API, please join our Discord server