fixer

An automated workflow for processing open GitHub issues in a repository. It gives each issue its own branch and pull request, reviews the work, and continues through the backlog in batches.

In plain words
What is it for?
Use it to implement self-contained fixes across a repository, create and review pull requests, merge completed work, and optionally process only one batch.
Why use it?
It removes the need to repeatedly perform the same issue-to-merge steps and keeps issues that cannot be completed aside for later review.

Skill for Claude CodeCodex

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.

agentmods
npx agentmods add skills/optave/ops-codegraph-tool/fixer
Any agent
npx skills add optave/ops-codegraph-tool --skill fixer
Clone the repo
git clone --depth 1 https://github.com/optave/ops-codegraph-tool

Made for: Claude Code, Codex.

Per session 78 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 33,066 The whole file, excluding the scripts and references it only reads on demand.
Security scan C 1 finding. Scan, not verified.
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 $0.00078 $0.33066
Opus 5 $0.00039 $0.16533
Sonnet 5 $0.00016 $0.06613
Haiku 4.5 $0.00008 $0.03307

Measured 2d ago against content hash fa6e645e466d, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade C, and why

fixer scanned grade C with 1 finding 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 2d ago.

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.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

**Cleanup.** State lives in `.codegraph/fixer/`. It is left on disk after this run finishes, but Phase 0's resume handling already treats a completed run's artifacts as stale on the *next* invocation — an empty `queue.js
.claude/skills/fixer/SKILL.md · 1,635 lines

How it starts

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

/fixer — Solve, Ship, and Merge Until the Backlog Is Actually Done

Work the lowest-numbered open issues in this repository only from open issue to merged PR, one at a time, in batches of count (default 10). Each issue gets its own branch cut from a freshly fetched origin/main, its own PR, its own review-convergence loop, and its own merge. Any PR that cannot be brought to a mergeable state inline is parked so the batch keeps moving, and Phase: Drain Parked PRs drains all parked PRs with /sweep and /resolve until every one is merged or provably blocked.

The objective is the whole qualifying backlog, not one arbitrary batch. Once a batch's issues are all merged/parked/abandoned/self-gated and Phase: Drain Parked PRs has run, Phase: Continue the Batch Loop, or Proceed to Drain checks whether more open issues by AUTHOR still qualify. If they do, the next batch starts automatically. Pass --once to process a single batch and stop instead, regardless of what remains.

Repo scope. /fixer only ever acts on the repo it is invoked in (detected dynamically in Phase 0 — on this checkout, optave/ops-codegraph-tool). It never searches, opens issues on, or opens PRs against any other repository, even when this repo currently has nothing to do. An empty queue is a successful outcome, not a failure: if there is nothing to do, Phase 1 reports that and stops — it does not look elsewhere, does not lower the --author/blocked-label bar to manufacture a queue, and does not invent unrelated work (stale files, refactors, drive-by fixes) to fill a batch.


Why this skill is built the way it is

A previous batch run on this repo collapsed under compounding merge conflicts — hours were spent re-fixing work that had already been solved. That was not bad luck; it was mechanical, and it had two causes:

  1. Issues were solved on a shared branch, so every PR's diff grew to contain all prior fixes. Each new conflict had to be re-resolved against an ever-larger diff.
  2. The Main ruleset enforces strict: true on its required status checks — a PR must be up to date with main to merge. With 10 PRs open at once, merging each one leaves every remaining branch stale, so the batch pays ~45 catch-up merges, and each one is a fresh chance to silently drop already-solved work.

Read the full file on GitHub · 1,635 lines

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. 2d ago First seen · 1,635 lines · 78 tokens per session scan C fa6e645e466d

Subscribe to this mod's changes

fixer is a skill published in the GitHub repository optave/ops-codegraph-tool (92 stars, last pushed 3d ago), licensed Apache-2.0. It adds 78 tokens to every session and 33,066 once invoked, about $0.0004 per session on Opus 5. A static security scan graded it C with 1 finding (recursive force delete). 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

codespaces

Build and query architecture-aware code search, dependency graphs, call flows, impact analysis, and belief maps for Python, TypeScript, TSX, Rust, C#, Java, Go, Ruby, and Ruby on Rails repositories. Use before non-trivial code changes to find module boundaries, blast radius, architecture violations, and the minimal…

diskd-ai/codespaces · 74 tokens

security-triage

Turn a large codebase into a short, ranked reading list of security-relevant code paths worth a human researcher's time, using the flyto-indexer MCP tools. Use when asked to find, prioritize, or triage potential vulnerabilities / taint flows / attack surface in a repository indexed (or indexable) by flyto-indexer …

flytohub/flyto-indexer · 105 tokens

devlens

Understand a codebase with the DevLens MCP — TypeScript, JavaScript, Python, Go, Rust, or Java (incl. React/Next.js/Node, FastAPI/Flask/Django, Spring Boot, Gin/Echo/chi/net-http, axum/actix/rocket). Query a precomputed graph of nodes (components, hooks, functions, classes, methods, structs, traits, routes) and typed…

devlensio/devlensOSS · 0 tokens

archon

Multi-language dependency impact analysis for Java, JS/TS, and Python codebases. Answers "if I change this, what breaks?" Run /archon diff before refactoring, /archon analyze for full dependency maps.

Schr0d/Archon · 48 tokens

codebase-intelligence

Query the codebase-intelligence CLI to understand TypeScript architecture, dependencies, blast radius, and risk before reading files. Use for any "how is this structured", "what breaks if I change X", "where is the complexity" question.

bntvllnt/codebase-intelligence · 54 tokens

wayfinder

Plan a huge chunk of work (more than one agent session can hold) as a shared map of decision tickets on your issue tracker, and resolve them one at a time until the way to the destination is clear.

mattpocock/skills · 46 tokens