diagnosing-perf-regressions

diagnosing-perf-regressions is a skill for Claude Code from ouzlifaneyassine1-dot/onyx-engine. It costs 58 tokens per session (2,356 once invoked), scanned A, a copy of diagnosing-perf-regressions, MIT.

A method for finding why a game's frame rate, frame time, or load time became worse than a known-good version.

In plain words
What is it for?
Use it to investigate new frame drops, stuttering, longer loading, or a build that became slower after an update.
Why use it?
It prevents performance guesses by requiring measurements and tracing the regression back to the change that caused it.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the onyx plugin — 77 skills, 1 command, 2 hooks, 1 MCP server shipped together

Good fit Use it to investigate new frame drops, stuttering, longer loading, or a build that became slower after an update.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/ouzlifaneyassine1-dot/onyx-engine/diagnosing-perf-regressions
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 ouzlifaneyassine1-dot/onyx-engine --skill diagnosing-perf-regressions
Clone the repo
git clone --depth 1 https://github.com/ouzlifaneyassine1-dot/onyx-engine

Made for: Claude Code.

Or install onyx, the plugin that ships this one along with the rest of its 77 skills, 1 command, 2 hooks, 1 MCP server.

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 diagnosing-perf-regressions

README.md
[![agentmods](https://agentmods.dev/badge/skills/ouzlifaneyassine1-dot/onyx-engine/diagnosing-perf-regressions/github.svg)](https://agentmods.dev/skills/ouzlifaneyassine1-dot/onyx-engine/diagnosing-perf-regressions)
Your own site
<a href="https://agentmods.dev/skills/ouzlifaneyassine1-dot/onyx-engine/diagnosing-perf-regressions"><img src="https://agentmods.dev/badge/skills/ouzlifaneyassine1-dot/onyx-engine/diagnosing-perf-regressions/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for diagnosing-perf-regressions

Your own site · 80×15
<a href="https://agentmods.dev/skills/ouzlifaneyassine1-dot/onyx-engine/diagnosing-perf-regressions"><img src="https://agentmods.dev/badge/skills/ouzlifaneyassine1-dot/onyx-engine/diagnosing-perf-regressions.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 58 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,356 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 86% copy Near-identical to another mod 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.00058 $0.02356
Opus 5 $0.00029 $0.01178
Sonnet 5 $0.00012 $0.00471
Haiku 4.5 $0.00006 $0.00236

Measured 8d ago against content hash ab4eb397a025, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-12, from the pricing page.

Security

Grade A, and why

diagnosing-perf-regressions 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 8d 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.

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.

Origin

This is a copy

86% identical to diagnosing-perf-regressions — 87 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.

skills/workflow/diagnosing-perf-regressions/SKILL.md · 191 lines

How it starts

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

Diagnosing Performance Regressions

Overview

There is a difference between "this game is slow" and "this game got slow." This skill is for the second one.

Core principle: A regression has a cause. The cause is a specific change. Bisect to find the change, then root-cause from there.

This skill is not general performance tuning. If the game has always run at 30fps and you want to push it to 60, that is onyx:tune-performance (the domain skill for budget-driven optimization). This skill is the diagnostic — what broke, where, when.

When To Use

  • "It used to run at 60fps, now it's at 30."
  • "Load time was 3s yesterday, now it's 15s."
  • "Frame stutters started after I added X."
  • "Build went from buttery to choppy and I don't know why."

When NOT To Use

  • "The game has always been slow, help me speed it up." → onyx:tune-performance.
  • "I want to know if my game is fast enough to ship." → onyx:tune-performance.
  • "The game crashes." → onyx:debug.

The Iron Law

NO PERF FIX WITHOUT A KNOWN-GOOD vs KNOWN-BAD MEASUREMENT

You cannot fix a regression you have not measured. Eyeballing "feels laggy" is not a measurement. Get a number for the good state and a number for the bad state before touching code.

The Loop

  Measure now → Find last good → Bisect changes → Match to a cliff → A/B fix → Re-measure

1. Measure now

  onyx_play  (on the scene that's slow)
  ── wait 5-10 seconds of normal play ──
  onyx_get_diagnostics
  onyx_get_console
  onyx_stop

What to capture:

Metric Source Why
Avg FPS / frame time onyx_get_diagnostics or in-game perf monitor Headline number
Spike pattern onyx_get_console if user has frame-time prints, else in-game monitor Steady 30 vs intermittent stutters → different causes
Scene complexity onyx_get_scene_tree (root counts) Establishes baseline for instance/body count cliffs

Write the bad-state number down. "Scene Level3 runs at 31fps avg, drops to 12fps when 5+ enemies are on screen."

Read the full file on GitHub · 191 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. 8d ago First seen · 191 lines · 58 tokens per session scan A ab4eb397a025

Subscribe to this mod's changes

diagnosing-perf-regressions is a skill published in the GitHub repository ouzlifaneyassine1-dot/onyx-engine (0 stars, last pushed 3mo ago), licensed MIT. It adds 58 tokens to every session and 2,356 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it A with 0 findings. It is 86% identical to diagnosing-perf-regressions, differing in 87 lines, and is treated as a copy.

Related

Other skills, from other repositories

minecraft-debug-mcp

Operate and debug the live Minecraft bot through its built-in MCP REPL server. Use when work requires starting the bot with pnpm dev, connecting to the local MCP endpoint, inspecting cognitive state/logs/history, injecting synthetic chat/events, or running targeted REPL code against the running brain during…

moeru-ai/airi · 68 tokens

graphics-api-hooking

Analyze Direct3D/DXGI, OpenGL, and Vulkan rendering, presentation, composition, and capture evidence. Use to distinguish API samples, PresentMon event metrics, Tracy instrumentation, compatibility translation, frame images, and validation diagnostics; review swap chains, overlays, resource lifetime, and…

gmh5225/awesome-game-security · 90 tokens

console-get-logs

Retrieve Unity Editor logs from the MCP plugin's LogCollector, optionally filtered by log type or time window. Useful for debugging and monitoring Editor activity.

IvanMurzak/Unity-MCP · 35 tokens

editor-application-get-state

Return the current state of UnityEditor.EditorApplication — playmode, paused state, compilation state, and related flags.

IvanMurzak/Unity-MCP · 31 tokens

console-clear-logs

Clear the MCP log cache (used by 'console-get-logs') and the Unity Editor Console window. Useful for isolating logs to a specific action by clearing the slate first.

IvanMurzak/Unity-MCP · 41 tokens

profiler-start

Enable Unity's runtime profiler and open the Profiler window. Idempotent: calling when already enabled returns the current enabled state without error.

IvanMurzak/Unity-MCP · 32 tokens