repo_scrub_history

Purge sensitive files from all git history using git-filter-repo. Clones the repo as a mirror, removes specified paths from every commit, and force-pushes the rewritten history. DESTRUCTIVE: rewrites all commit SHAs.

Server Git Steer ry-ops/git-steer
Category Destructive
Risk class Critical
Parameters 00 required

What repo_scrub_history does on Git Steer

AI agents call repo_scrub_history to permanently remove resources in Git Steer — typically in cleanup and lifecycle workflows. It does its job in a single call, and there is no undo.

Why repo_scrub_history needs a policy

This tool irreversibly modifies git history by rewriting commits and force-pushing changes. It destroys existing commit identities (SHAs), breaks continuity for anyone with local clones, and cannot be reversed without complex recovery procedures. The blast radius is critical: it affects the entire repository history, all dependent clones, CI/CD references, and creates a security/operational incident.

From the tool's definition Tool description explicitly states 'DESTRUCTIVE: rewrites all commit SHAs' and performs 'force-pushes the rewritten history', permanently altering the repository's commit history in a way that cannot be undone.

Risk signalsBulk/mass operation — affects multiple targets

Questions about repo_scrub_history

What does the repo_scrub_history tool do? +

Purge sensitive files from all git history using git-filter-repo. Clones the repo as a mirror, removes specified paths from every commit, and force-pushes the rewritten history. DESTRUCTIVE: rewrites all commit SHAs. It is categorised as a Destructive tool in the Git Steer MCP Server, which means it can permanently delete or destroy data. Block by default and require explicit approval.

How do I enforce a policy on repo_scrub_history? +

Register the Git Steer MCP server in PolicyLayer and add a rule for repo_scrub_history: allow, deny, rate-limit, or require approval. Point your MCP client at the PolicyLayer proxy URL and the rule is enforced on every call, before it reaches Git Steer. Nothing to install.

What risk level is repo_scrub_history? +

repo_scrub_history is a Destructive tool with critical risk. Critical-risk tools should be blocked by default and only enabled with explicit human approval.

Can I rate-limit repo_scrub_history? +

Yes. Add a rate_limit block to the repo_scrub_history rule in your PolicyLayer policy. For example, setting max: 10 and window: 60 limits the tool to 10 calls per minute. Rate limits are tracked per agent session and reset automatically.

How do I block repo_scrub_history completely? +

Set action: deny in the PolicyLayer policy for repo_scrub_history. The AI agent will receive a policy violation error and cannot call the tool. You can also include a reason field to explain why the tool is blocked.

What MCP server provides repo_scrub_history? +

repo_scrub_history is provided by the Git Steer MCP server (ry-ops/git-steer). PolicyLayer sits as a proxy in front of this server to enforce policies before tool calls reach the server.

// LOOK UP ANOTHER SERVER

Every MCP server has a record like this.

Type a name, get the same breakdown: verified identity, auth posture, risk grade, capabilities, recommended policy.

Teams ship this data inside their own products. See what a licence covers →

// GET IN TOUCH

Have a question or want to learn more? Send us a message.

Message sent.

We'll get back to you soon.