
from re-frame-pair15
Pair-program and debug a live re-frame (shadow-cljs) application: inspect app-db, trace epochs, dispatch events, hot-swap handlers, and run post-mortems against
re-frame-pair adds live runtime debugging and interactive pair-programming capabilities for ClojureScript apps using re-frame and shadow-cljs. It connects to the app's nREPL, inspects app-db and recent epochs, dispatches events, and can hot-swap handlers to test fixes without immediate source edits. This is designed for fast investigative loops where reproducing and validating behavior in the running app is essential.
Use this skill when the user reports UI bugs, unexpected app-db state, or when you need to verify behavioural changes in the running app. It's ideal for: diagnosing why a UI didn't update, tracing which event produced a state transition, testing a handler change via hot-swap, or performing post-mortems by walking parent dispatch chains. Do not use if the app isn't running or isn't built with shadow-cljs.
docs/skill/* for deeper operations and troubleshooting.discover-app.sh probe; follow the empirical loop (observe, inspect epoch, form hypothesis, probe, compare, then edit). Surface failures verbatim and prefer compact diffs before full snapshots.Best used by agents that can run shell scripts and interact with REPLs (Claude Code / code-capable assistants, CLI-enabled agents).
re-frame-pair is a well-crafted skill for pair-programming with live re-frame (ClojureScript) applications via shadow-cljs nREPL. It provides 10 bash shim scripts that delegate to a single ops.clj Babashka script, plus a comprehensive SKILL.md with progressive disclosure via a detail-on-demand table linking to 7 reference docs. All scripts failed in testing only because babashka isn't installed — they correctly detect the missing dependency and emit structured EDN errors. The skill targets a specific but underserved niche (ClojureScript/re-frame developers) and would be extremely valuable to that audience.
babashkashadow-cljsImpressive skill from day8 (well-known re-frame maintainers). Clean architecture with thin bash shims delegating to ops.clj. Excellent use of progressive disclosure in SKILL.md. Structured EDN output throughout. No security concerns — no exfiltration, no destructive commands, no hardcoded credentials. The eval-cljs accepting arbitrary expressions is intentional for REPL-driven development.