.claude/skills/review-performance-open/SKILL.md
Open performance review
npx skillsauth add cwilliams5/Alt-Tabby review-performance-openInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Enter planning mode. Think outside the box. Use maximum parallelism and processing — don't worry about tokens.
This project has ballooned in complexity over time. This project uses many targeted reviews for performance issues. But targeted reviews only find what they are targeting. This is an open ended review to step back and look for any performance improvements without a contstrained review framework.
Reviewing the code, can you find any peformance opportunities?
The window store and its producers are a main point of focus - any work they are doing can block the interceptor and GUI. Any optimizations to the window event -> updated window store path?
The GUI runs at high frame rates and responsiveness is the #1 pillar of this project. Any optimizations to the user action/window event -> pixel on screen path?
But even micro optimizations are accepted and encouraged - they add up, especially with a UI running at 240fps.
After explore agents report back, validate every finding yourself. The explore agents sometimes identify errors, that in the larger context, are handled/captured elsewhere.
For each candidate:
file.ahk lines X–Y" — quote the actual pattern across multiple files to show it's systemic, not isolated.This project has a COM STA message pump that makes certain "obvious" optimizations unsafe:
Buffer() static in functions reachable from the paint/COM path. D2D/DXGI COM calls pump the STA message loop and can re-enter the same function, corrupting the shared buffer. Critical "On" does NOT prevent this. See ahk-patterns.md Hot Path Resource Rules.Float() wrappers from NumPut("float", ...) calls feeding D2D/D3D buffers. These ensure IEEE 754 bit patterns — not redundancy.These constraints exist because a previous optimization pass introduced shader corruption, FPS drops, and visual hitching that took extensive bisection to diagnose. When in doubt, leave it alone.
Group by class of issue, not by file:
Pattern: What's happening systemically (1–2 sentences)
Evidence: Files and line ranges showing the pattern across the codebase
Impact: Estimated performance/reliability/maintainability cost
Fix approach: High-level — not line-by-line, but "change X to Y across the codebase"
Scope: How many files, estimated effort
Counter-argument: Why this might not be worth doing
Order by estimated impact (largest systemic wins first). A single architectural insight that affects 20 files is more valuable than 10 isolated micro-optimizations.
Ignore any existing plans — create a fresh one.
tools
Create a new git worktree and switch the session into it
tools
Spawn agent to trace code flow via query tools — answer only, no context cost
tools
Commit, push, and create a PR for the current branch
tools
Retire a shader by moving its files to legacy/shaders_retired