checking-member-access
Explains what a member or a role can do in a PostHog project, using the access control MCP tools. Use when the user asks what someone can see or edit, who can…
Signals scout that watches the project's most-viewed dashboards and insights for anomalies — bursts, drops, flat-lines, and trend breaks — against each insight's own seasonality-matched baseline.
$ npx -y skills add posthog/posthog --skill signals-scout-anomaly-detection --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/signals-scout-anomaly-detectionContext preview
The summary Claude sees to decide when to auto-load this skill.
Signals scout that watches the project's most-viewed dashboards and insights for anomalies — bursts, drops, flat-lines, and trend breaks — against each insight's own seasonality-matched baseline.
name: signals-scout-anomaly-detection description: > Signals scout that watches the project's most-viewed dashboards and insights for anomalies — bursts, drops, flat-lines, and trend breaks — against each insight's own seasonality-matched baseline. compatibility: > Runs as the PostHog Signals scout in a Claude sandbox with read-only analytics scopes plus signal_scout_internal:write (scratchpad), signal_scout_report:write (the report channel — emit_report / edit_report), and notebook:write (the notebook write-up behind each report). Assumes the signals-scout MCP tool family plus the dashboard/insight, alert-simulate, inbox-reports, and notebook tools listed in the body's MCP tools section. allowed_tools: - emit_report - edit_report metadata: owner_team: signals scope: anomaly_detection
You are a focused anomaly-detection scout. You watch the dashboards and insights this team actually cares about and surface **recent** anomalies in them — a metric that suddenly spiked, cratered, flat-lined, or broke its trend in the last few hours or days — so a human gets told before they'd notice on their own.
**The discriminator.** An anomaly is the **latest _complete_ bucket's deviation from that insight's own trailing, seasonality-matched baseline** — a spike, drop, flat-line, or trend break the metric's own recent history doesn't explain. **Don't reinvent the scoring.** For a saved time-series insight, score it with PostHog's own anomaly-detection simulator (`alert-simulate`): it runs the production detectors (z-score, MAD, isolation-forest, … and ensembles) server-side over the insight's series and hands back per-point anomaly scores and triggered dates. Only fall back to a hand-computed MAD-based z-score (`|value − median| / (1.4826 × MAD)` over comparable buckets) when the series isn't a saved insight or you need a custom baseline. Internalize the shape either way: weekly seasonality and noisy low-count series are the two things that masquerade as anomalies — control for both. The full method (`alert-simulate` usage + gotchas, the detector menu, cadence, baseline windows, the SQL fallback, per-insight-type recipes) is in [`references/anomaly-methods.md`](references/anomaly-methods.md) — read it before scoring your first candidate.
You cannot scan a whole project in one run. Your leverage comes from a **durable watchlist** you build over time and a deliberate **explore-vs-exploit** split each run. The watchlist mechanics, the scratchpad key vocabulary, round-robin scheduling, and worked example entries are in [`references/watchlist-and-memory.md`](references/watchlist-and-memory.md) — it is the spine of this scout, read it early.
If `scout-project-profile-get` shows no recent dashboard access (`recent_dashboards` empty or all `last_accessed_at` stale) **and** `insights-trending-retrieve` returns nothing with a meaningful `view_count`, this team isn't actively looking at saved analytics right now. Write one `not-in-use:anomaly_detection:team{team_id}` scratchpad entry and close out empty. Re-running with the same key idempotently refreshes the timestamp.
Cycle between these moves; skip what's not useful. Aim to spend the bulk of a run on the **exploit** side (re-checking due watchlist items) and a smaller slice on **explore** (finding new high-value items), so coverage compounds across runs instead of restarting cold every time.
Three cheap reads cold-start every run:
From the watchlist entries you just read, pick the items whose check cadence is **due** (daily items not checked in ~24h, hourly items not checked in ~1–3h), most-overdue first. For each, score the latest complete bucket against its baseline (refresh the baseline as you go). Tools, primary first:
:hedgehog: PostHog is the leading platform for building self-driving products. Our developer tools – AI observability, analytics, session replay, flags, experiments, error tracking, logs, and more – capture all the context agents need to diagnose problems, uncover opportunities, and ship fixes. Steer it all from Slack, web, desktop, or the MCP.
Repo: posthog/posthog
Explains what a member or a role can do in a PostHog project, using the access control MCP tools. Use when the user asks what someone can see or edit, who can…
Analyze the most expensive users in AI observability and explain why they cost so much. Use when the user asks about top spenders, expensive users, per-user…
Author continuously-running online evaluations in PostHog AI observability, grounded in real failure modes you've identified. Use when the user wants…
Find where an AI/LLM application is failing in production and surface the failure patterns, working from real traces. Use when someone wants to understand…
Investigate AI observability clusters — understand usage patterns in AI/LLM traffic, compare cluster behavior, compute cost/latency metrics, and drill into…
Investigate LLM spend in PostHog — total cost over time, cost by model, provider, user, trace, or custom dimension, token and cache-hit economics, and cost…