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.
npx agentmods add skills/optave/ops-codegraph-tool/fixernpx skills add optave/ops-codegraph-tool --skill fixergit clone --depth 1 https://github.com/optave/ops-codegraph-toolWhat 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.
| Model | Per session | Once 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 |
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 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:
- 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.
- The
Mainruleset enforcesstrict: trueon its required status checks — a PR must be up to date withmainto 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.
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.
- 2d ago First seen · 1,635 lines · 78 tokens per session scan C fa6e645e466d
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.
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…
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 …
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…
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.
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.
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.