What problem does it solve? Existing re-frame2 codebases accumulate anti-patterns — hand-rolled HTTP retry loops, boolean subscription clusters acting as ad-hoc state machines, manual loading flags, schemaless boundary events, imperative effects in handlers, and view-side hook state — that are hard to spot and tedious to audit by hand. This Skill statically critiques a body of re-frame2 source in one pass and returns every material finding with concrete evidence and the smallest safe correction. ## Core Features & Use Cases - Anti-pattern detection: Routes greppable signals in the in-scope .cljs / .cljc source to a six-leaf catalogue, each leaf carrying detection rules, symptom examples, and edge cases that pre-empt false positives. - Severity-ordered critique: Returns findings highest consequence first, each with path:line evidence, concrete consequence, smallest safe correction, and a cross-link to the canonical idiom under skills/re-frame2/patterns/ or spec/. - Intent-gated fixes: A plain review request stays read-only; a direct "fix it" request authorises safe in-scope edits, while cross-cutting redesigns remain proposals. - Use Case: Paste a snippet from cart/handlers.cljs and ask for an anti-pattern audit; the Skill loads only the matching catalogue leaves, consolidates co-occurring findings that share one refactor, and delivers the complete critique in the same turn. ## Quick Start Ask the assistant to review your re-frame2 code for anti-patterns, pasting a ClojureScript snippet or naming a .cljs file or directory to audit.