adding-analytics
Add PostHog analytics to a web application, including event tracking, page views, feature flags, and session replay.
How do I install this agent skill?
npx skills add https://github.com/spencerpauly/awesome-cursor-skills --skill adding-analyticsIs this agent skill safe to install?
- Gen Agent Trust Hubpass
The skill provides safe and standard instructions for integrating PostHog analytics into various web frameworks. It correctly identifies the need for environment variables to handle secrets and recommends official SDKs from a well-known service.
- Socketpass
No alerts
- Snykpass
Risk: LOW · No issues
- ZeroLeakspass
Score: 93/100 · 2 sections analyzed
What does this agent skill do?
Add Analytics (PostHog)
Use this skill when the user asks to add analytics, event tracking, page views, feature flags, or session replay to a web application.
Steps
-
Detect the framework — check for
next.config.*,vite.config.*,package.jsonscripts, orindex.htmlto determine if this is Next.js, React (Vite/CRA), Vue, Svelte, or plain HTML. -
Install the SDK
- Next.js / React:
npm install posthog-js - Next.js (server-side):
npm install posthog-js posthog-node - Python:
pip install posthog - Node.js backend:
npm install posthog-node
- Next.js / React:
-
Create a provider / init module
-
For Next.js App Router, create
app/providers.tsx:"use client"; import posthog from "posthog-js"; import { PostHogProvider as PHProvider } from "posthog-js/react"; import { useEffect } from "react"; export function PostHogProvider({ children }: { children: React.ReactNode }) { useEffect(() => { posthog.init(process.env.NEXT_PUBLIC_POSTHOG_KEY!, { api_host: process.env.NEXT_PUBLIC_POSTHOG_HOST ?? "https://us.i.posthog.com", capture_pageview: false, // we capture manually for SPAs }); }, []); return <PHProvider client={posthog}>{children}</PHProvider>; } -
Wrap
{children}in the root layout with<PostHogProvider>. -
For Pages Router, init in
_app.tsxinside auseEffect.
-
-
Add page-view tracking — for SPAs, create a component that calls
posthog.capture('$pageview')on route change using the framework's router events. -
Add
.envvariables — prompt the user for their PostHog project API key and host:NEXT_PUBLIC_POSTHOG_KEY=phc_... NEXT_PUBLIC_POSTHOG_HOST=https://us.i.posthog.comAdd these keys to
.env.exampleas well. -
Add custom events — if the user specifies events to track (e.g. sign-up, purchase), add
posthog.capture("event_name", { ...properties })calls in the relevant handlers. -
Feature flags (optional) — if requested, show how to use
posthog.isFeatureEnabled("flag-name")or theuseFeatureFlagEnabledhook. -
Session replay (optional) — enable by adding
session_recording: { maskAllInputs: false }to the init config if requested.
Notes
- Never hardcode API keys — always use environment variables.
- Add
posthog-jsto the Content Security Policy if the project has one. - For monorepos, install in the package that renders the UI, not the root.
How can the creator link this skill?
Add the canonical catalog link to the repository README so users can inspect current installs and available audits. The publishing guide covers the complete discovery path.
<a href="https://skillzs.dev/skills/spencerpauly/awesome-cursor-skills/adding-analytics">View adding-analytics on skillZs</a>