claude-simplify-wrapper

claude-simplify-wrapper is a skill for Claude Code, Codex from besimple-oss/broccoli. It costs 28 tokens per session (1,163 once invoked), scanned A, original, MIT.

A wrapper that asks Claude’s built-in /simplify skill to simplify the changes between two Git revisions. It then checks the result and creates a commit.

In plain words
What is it for?
Use it for a focused simplification pass over recent repository changes, followed by build, lint, or test validation and automatic committing.
Why use it?
It reduces duplicated code, convoluted logic, and unnecessary work after a change set, while requiring a clean working tree and a usable Git setup.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: mentions subagents; positional $N argument; mentions Claude Code.

Good fit Use it for a focused simplification pass over recent repository changes, followed…

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/besimple-oss/broccoli/claude-simplify-wrapper
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add besimple-oss/broccoli --skill claude-simplify-wrapper
Clone the repo
git clone --depth 1 https://github.com/besimple-oss/broccoli

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for claude-simplify-wrapper

README.md
[![agentmods](https://agentmods.dev/badge/skills/besimple-oss/broccoli/claude-simplify-wrapper.svg)](https://agentmods.dev/skills/besimple-oss/broccoli/claude-simplify-wrapper)
Your own site
<a href="https://agentmods.dev/skills/besimple-oss/broccoli/claude-simplify-wrapper"><img src="https://agentmods.dev/badge/skills/besimple-oss/broccoli/claude-simplify-wrapper.svg" alt="Measured on agentmods" height="20"></a>
Per session 28 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,163 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00028 $0.01163
Opus 5 $0.00014 $0.00581
Sonnet 5 $0.00006 $0.00233
Haiku 4.5 $0.00003 $0.00116

Measured 7d ago against content hash 9e5a20cda60a, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

claude-simplify-wrapper scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.

The scan reads SKILL.md. This mod also ships 1 executable file (scripts/run_simplify_loop.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

prompt-templates/skills/claude-simplify-wrapper/SKILL.md · 105 lines

How it starts

The opening of the file, as written. The whole thing — 105 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Simplify Loop

Input: a git base SHA/ref to simplify against (for example: <sha> or HEAD~1).

Preconditions

  • Confirm you are in the intended repo: git rev-parse --show-toplevel
  • Ensure you have a base commit SHA (prefer the commit from before the change set).
  • Start from a clean working tree (required):
    • git status --porcelain should be empty.
  • Ensure git can create commits (stop if missing):
    • If commits fail due to missing identity, configure user.name and user.email.
  • Only claude CLI is required (no codex dependency).

Scope / intent

  • This is a simplification pass, not a general code review.
  • Invokes Claude's built-in /simplify skill which runs three parallel agents internally:
    • Code reuse (find and eliminate duplication)
    • Code quality (simplify convoluted logic)
    • Code efficiency (remove unnecessary work)
  • Changes are validated (build/lint/test) and committed automatically.

Architecture

Two-phase per iteration:

  1. Simplify subprocess — Invokes claude with the /simplify prompt. The built-in skill handles its own three parallel agents and applies fixes directly to the working tree.
  2. Validate+commit subprocess — A second claude subprocess that runs the repo's standard build/lint/test commands, fixes only breakages introduced by the simplify phase, stages and commits all changes, and emits LOOP_STATUS: {...} so the wrapper can decide whether to continue.

The loop stops when:

  • The simplify phase produces no working-tree changes (nothing to simplify)
  • The validate phase fails to make checks green
  • Max iterations reached

Expected runtime

Typically runs 5–20 minutes per iteration. Allow at least 30 minutes for a single iteration.

Do not interrupt/restart the subagent if it looks stuck. The loop script owns stuck/timeout handling and will exit on its own when it completes or when --timeout is reached.

Run

resolve_skill_dir() {
  local name="$1"
  local repo_root=""
  repo_root="$(git rev-parse --show-toplevel 2>/dev/null || pwd)"

  local candidates=(
    "$repo_root/.agents/skills/$name"
    "$repo_root/.claude/skills/$name"
    "$HOME/.agents/skills/$name"
    "$HOME/.codex/skills/$name"
    "$HOME/.claude/skills/$name"
  )

  for d in "${candidates[@]}"; do
    if [[ -d "$d" ]]; then
      echo "$d"
      return 0
    fi
  done

  echo "Error: skill '$name' not found in repo-scoped or user-scoped skill dirs." >&2
  return 1
}

SIMPLIFY_SKILL_DIR="$(resolve_skill_dir claude-simplify-wrapper)"
python3 "$SIMPLIFY_SKILL_DIR/scripts/run_simplify_loop.py" <base-sha>

Read the full file on GitHub · 105 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 7d ago First seen · 105 lines · 28 tokens per session scan A 9e5a20cda60a

Subscribe to this mod's changes

claude-simplify-wrapper is a skill published in the GitHub repository besimple-oss/broccoli (285 stars, last pushed 4mo ago), licensed MIT. It adds 28 tokens to every session and 1,163 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

submit-review

Reference for how a finished ticket reaches human review in the Gaffer factory. Submission is RUNNER-OWNED — the agent commits its work and evidences the ACs, then stops; the runner records the delivery, pushes, opens the PR, and submits for review. Invoke when you think your work is ready to hand off, to confirm what…

tmj-90/gaffer · 95 tokens

commit-and-push

Create a well-formatted git commit and push to remote repository.

jmagly/aiwg · 17 tokens

customize-contribute-back

Contribute a user's AIWG customization back upstream as a PR — reviews for general applicability, creates branch, opens PR.

jmagly/aiwg · 29 tokens

create-branch

Use at the start of work on any claimed Dispatch ticket, before editing files, to create the working branch with the required prefix. Invoke whenever a ticket needs code changes and you are not yet on a non-protected feature branch.

tmj-90/gaffer · 50 tokens

changelog-generator

Use when producing release notes from Conventional Commits, computing the next semantic version from a commit stream, generating CHANGELOG.md, or automating release notes in CI. Triggers on "generate the changelog", "what version bump do these commits require", "release notes", "CHANGELOG", or "semantic version".

tmj-90/gaffer · 68 tokens

cc-autopilot

Run cc-autopilot, a perpetual autonomous AUDIT/GENERATE→TRIAGE→BATCH→FIX→VERIFY→REVIEW→COMMIT loop that holds every change to a configured quality bar through a judge panel. Its fixers each own a file-disjoint slice of the tree so no two can ever touch the same file, and nothing unverified reaches git. Works on a web…

gbotev1/cc-autopilot · 155 tokens