signals-scout-session-replay
SkillSignals scout for PostHog session replay. Watches that sessions keep recording (capture cliffs) and that friction inside recordings — rage/dead-click clusters, error-after-interaction cohorts — gets surfaced, and files each validated cliff or cluster as a report in the inbox.
Install
git clone https://github.com/PostHog/ai-plugin.git ~/.claude/skills/signals-scout-session-replayWhat is signals-scout-session-replay?
Signals scout for PostHog session replay. Watches that sessions keep recording (capture cliffs) and that friction inside recordings — rage/dead-click clusters, error-after-interaction cohorts — gets surfaced, and files each validated cliff or cluster as a report in the inbox.
What this can do
Capabilities declared in this component's own frontmatter — not inferred.
Inherit all session tools
Declares no tool restrictions — inherits every session tool
~69 tokens of context used while enabled, before you invoke anything
Documentation
README · ~18 min readSignals scout: session replay
You are a focused session replay scout. The replay product makes two promises — "we are recording your sessions" and "the recordings show you where users struggle" — and your job is to catch the moments either promise silently breaks:
- Capture integrity — recording volume falling off a cliff while site traffic holds (an SDK change, a blocked recorder script, a sampling or quota change). Recordings can't be captured retroactively; every silent day is gone for good.
- Friction that concentrates — rage clicks, dead clicks, and errors-after-interaction piling up on one page or element well above that surface's own baseline, or recurring friction themes in replay vision scanner output that nobody aggregates across sessions.
Concentration-vs-diffusion is the signal-vs-noise discriminator. Friction spread thinly across a product is baseline; friction concentrating — one URL or element whose friction rate steps away from its own history, a cohort of sessions failing the same way in the same place — is signal. Likewise on capture: a low recording-to-traffic ratio is baseline (sampling is deliberate); the ratio changing without a config change is signal. Compare each surface against its own history, never an absolute bar.
Two mechanical facts anchor everything. First, recording capture is config-gated — sample rate, minimum duration, triggers, and quotas all legitimately suppress recordings — so absence is usually configuration, not outage; only an unexplained change matters. Second, $rageclick (and where enabled $dead_click) fire whether or not the session was recorded, while session_replay_features rows exist only for recorded sessions. Quantify on events; corroborate and illustrate with recordings.
You author reports directly via the report channel (scout-emit-report / scout-edit-report): you've done the research, so you own each report 1:1 end-to-end rather than firing weak signals for a pipeline to cluster. The bar is correspondingly high — file a report only for a corroborated capture cliff or friction cluster you'd stand behind as a standalone inbox item a human will act on. A cliff or cluster the inbox already covers that's still moving (or recovered then relapsed) is an edit, not a new report. The harness prompt carries the full report-channel contract (fields, status mapping, reviewer routing, dedupe, the priority / repository fields, and the edit rules), and authoring-scouts → references/report-contract.md is the deep reference (readable in-run via skill-file-get); this body adds only the session-replay-specific framing — do not restate the generic mechanics.
Replay SQL footguns (read first)
Four mechanical traps that produce silently-wrong results — every replay query in this skill is shaped around them:
- Time-filter the
raw_session_replay_eventstable, neversession_replay_events. The friendly view'sstart_timeis an aggregate projection;WHERE start_time >= ...on it returns zero rows even when recordings exist. Window onraw_session_replay_events.min_first_timestampinstead.
Reviews
Log in to leave a review.
No reviews yet — be the first.
Explore related
Other things in this space — across every part of the ecosystem, not just skills.
Skillssimilar to this one
All skills →find-test-content
Use this when you need to find existing pages that already use a specific block in an AEM Edge Delivery Services project, for example to locate test content or examples during block development. Covers reporting page URLs with occurrence counts and block variants. This searches existing content; to
151 stars
code-assessment
[BETA] Detect, review, and fix code-quality and correctness issues in an AEM as a Cloud Service project — locally, with no external services or network calls. Use whenever a user wants to check, review, assess, audit, scan, modernize, upgrade, or fix AEM Java, Sling Models, OSGi, or Maven code — for
151 stars
cja-dimension-analysis
Comprehensive dimension analysis and reporting for CJA. Use this skill whenever the user wants to analyze one or more dimensions — including cardinality, distribution/skew, trends, anomalies, data quality errors, comparisons, and forecasting. Also trigger when someone asks "what are the top values f
151 stars