{"id":"org_RVcfDRcn2piydCEP2lqfD","slug":"posthog","name":"PostHog","domain":"posthog.com","description":null,"category":"observability","avatarUrl":"https://media.releases.sh/orgs/posthog.png","isHidden":false,"autoGenerateContent":true,"overviewCadenceDays":null,"featured":true,"fetchPaused":false,"discovery":"curated","status":"tracked","tags":[],"sourceCount":5,"releaseCount":2402,"releasesLast30Days":544,"avgReleasesPerWeek":125.8,"lastFetchedAt":"2026-07-20T16:47:49.378Z","lastPolledAt":"2026-07-20T16:47:38.849Z","trackingSince":"2020-01-01T00:00:00.000Z","aliases":[],"accounts":[{"platform":"github","handle":"PostHog"},{"platform":"x","handle":"PostHog"},{"platform":"youtube","handle":"@PostHog"}],"products":[],"sources":[{"id":"src_aFPJh8KG1_D_eibUSxbNu","slug":"posthog","name":"PostHog","type":"github","url":"https://github.com/PostHog/posthog","isPrimary":false,"isHidden":false,"discovery":"curated","fetchPriority":"normal","lastFetchedAt":"2026-07-20T16:47:49.378Z","lastPolledAt":"2026-07-20T16:47:38.849Z","releaseCount":666,"latestVersion":"agent-skills-v0.535.0","latestDate":"2026-07-20T15:59:11.000Z","latestAddedAt":"2026-07-20T16:47:41.630Z","productSlug":null,"productName":null,"kind":"platform","metadata":"{\"changelogUrl\":\"https://github.com/PostHog/posthog/blob/HEAD/CHANGELOG.md\",\"changelogDetectedAt\":\"2026-03-31T14:13:05.067Z\",\"tagDenyPrefixes\":[\"agent-skills-\",\"hog-\",\"phrocs-\",\"hogli-\"],\"wellKnownSweptAt\":\"2026-07-16T06:00:26.474Z\",\"sourceActor\":{\"nextAlarmAt\":\"2026-07-20T20:45:24.746Z\",\"lastAlarmAt\":\"2026-07-20T16:45:26.517Z\",\"managed\":true}}"},{"id":"src_ayguL4KiCWWacyZ6A3waO","slug":"posthog-changelog","name":"PostHog Changelog","type":"agent","url":"https://posthog.com/changelog","isPrimary":false,"isHidden":false,"discovery":"curated","fetchPriority":"paused","lastFetchedAt":"2026-07-10T12:56:52.427Z","lastPolledAt":"2026-07-10T12:54:26.324Z","releaseCount":113,"latestVersion":null,"latestDate":"2026-07-10T00:00:00.000Z","latestAddedAt":"2026-07-07T04:25:35.743Z","productSlug":null,"productName":null,"kind":"platform","metadata":"{\"noFeedFound\":true,\"feedEtag\":\"W/\\\"37662498f603e4938fd3b9c058c638e7\\\"\",\"feedLastModified\":\"Sat, 18 Apr 2026 15:58:47 GMT\",\"parseInstructions\":\"PostHog runs a weekly kanban-style changelog. Individual feature updates ship throughout the week, then get bucketed under a weekly header like \\\"March 2026 - Week IV\\\" each Friday. Produce EXACTLY one release per weekly bucket — NEVER one release per individual item.\\n\\nThe page-data.json contains the full historical roadmap (700+ items). Group items by ISO week of their `date` field (Friday-anchored). Use a title like \\\"Month YYYY - Week N\\\" where N is the ordinal week within the month containing that Friday (Week I=first Friday, II=second, III=third, IV=fourth).\\n\\nCRITICAL: Only extract the FIVE most recent weekly buckets — the older weeks are already stored. Skip anything dated before March 2026.\\n\\nPublish date should be the Friday of that week. Summarize the bucket items into 1-3 concise sentences in the content body — list the headline features, do not quote full descriptions. Skip rollup items already labelled with weekly headers.\",\"renderRequired\":true,\"lastCrawlJobId\":\"b02e762f-0579-4e40-8963-59a706b2860a\",\"lastCrawlAt\":\"2026-04-18T19:45:26.535Z\",\"fetchUrl\":\"https://posthog.com/page-data/changelog/page-data.json\",\"fetchEtag\":\"W/\\\"5ac80d3f8ffb06d479b9399eac3b7f8a\\\"\",\"fetchLastModified\":\"Fri, 10 Jul 2026 12:43:37 GMT\",\"pageEtag\":\"W/\\\"b7ccd310049a19e5dc4f94b53e8d4d49\\\"\",\"pageLastModified\":\"Fri, 10 Jul 2026 12:50:15 GMT\",\"sourceActor\":{\"nextAlarmAt\":null,\"lastAlarmAt\":\"2026-07-10T16:52:54.043Z\",\"managed\":false}}"},{"id":"src_gwaS6LcxpdXMxZdYQqzsw","slug":"posthog-js","name":"PostHog JS","type":"github","url":"https://github.com/PostHog/posthog-js","isPrimary":false,"isHidden":false,"discovery":"curated","fetchPriority":"normal","lastFetchedAt":"2026-07-20T16:13:31.390Z","lastPolledAt":"2026-07-20T16:13:25.204Z","releaseCount":1357,"latestVersion":"posthog-js@1.404.1","latestDate":"2026-07-17T20:06:49.000Z","latestAddedAt":"2026-07-17T23:41:34.126Z","productSlug":null,"productName":null,"kind":"sdk","metadata":"{\"changelogUrl\":\"https://github.com/PostHog/posthog-js/blob/HEAD/CHANGELOG.md\",\"changelogDetectedAt\":\"2026-03-31T14:13:13.229Z\",\"wellKnownSweptAt\":\"2026-07-16T06:00:26.474Z\",\"sourceActor\":{\"nextAlarmAt\":\"2026-07-20T20:11:25.689Z\",\"lastAlarmAt\":\"2026-07-20T16:11:26.993Z\",\"managed\":true}}"},{"id":"src_f9HO02Q_05sz_r5GJ6GeG","slug":"posthog-node","name":"PostHog Node","type":"github","url":"https://github.com/PostHog/posthog-node","isPrimary":false,"isHidden":false,"discovery":"curated","fetchPriority":"normal","lastFetchedAt":"2026-07-20T14:28:11.620Z","lastPolledAt":"2026-07-20T14:28:09.764Z","releaseCount":9,"latestVersion":"v1.3.0","latestDate":"2021-11-24T15:39:02.000Z","latestAddedAt":"2026-04-09T17:58:54.500Z","productSlug":null,"productName":null,"kind":"sdk","metadata":"{\"changelogDetectedAt\":\"2026-04-18T13:03:20.906Z\",\"wellKnownSweptAt\":\"2026-07-16T06:00:26.474Z\",\"sourceActor\":{\"nextAlarmAt\":\"2026-07-20T18:26:02.894Z\",\"lastAlarmAt\":\"2026-07-20T14:26:04.344Z\",\"managed\":true}}"},{"id":"src_FPX9VKXmAUWIOOyKwibVI","slug":"posthog-python","name":"PostHog Python","type":"github","url":"https://github.com/PostHog/posthog-python","isPrimary":false,"isHidden":false,"discovery":"curated","fetchPriority":"normal","lastFetchedAt":"2026-07-20T16:29:01.757Z","lastPolledAt":"2026-07-20T16:28:55.201Z","releaseCount":235,"latestVersion":"openfeature-provider-posthog-v0.1.14","latestDate":"2026-07-18T16:41:09.000Z","latestAddedAt":"2026-07-18T20:21:25.365Z","productSlug":null,"productName":null,"kind":"sdk","metadata":"{\"changelogUrl\":\"https://github.com/PostHog/posthog-python/blob/HEAD/CHANGELOG.md\",\"changelogDetectedAt\":\"2026-03-31T14:13:22.700Z\",\"wellKnownSweptAt\":\"2026-07-16T06:00:26.474Z\",\"sourceActor\":{\"nextAlarmAt\":\"2026-07-20T20:28:14.338Z\",\"lastAlarmAt\":\"2026-07-20T16:28:15.606Z\",\"managed\":true}}"}],"overview":{"scope":"org","content":"Added dead swipe detection to autocapture, shipped the `createPostHog()` factory for Next.js, and added experiment flag metadata to `$feature_flag_called` events.\n\n**Feature flag called events now carry experiment metadata** — `$feature_flag_called` events across `posthog-js`, `posthog-node`, and `posthog-python` include a `$feature_flag_has_experiment` boolean when the server provides it. Python SDKs now minimize event properties for non-experiment flags when the server enables `minimalFlagCalledEvents`, stripping super properties and custom event properties.\n\n**Next.js SDK replaced singleton exports with a factory function** — `createPostHog()` replaces `getPostHog` and `getServerSidePostHog`. Configure once in a shared module with an optional `getDistinctId` resolver that attributes server-side events to the authenticated user.\n\n**`posthog-js` added dead swipe detection to autocapture** — Touch swipe gestures that produce no observable screen change are now captured as `$dead_swipe` events. Configurable via `capture_dead_swipes`, `swipe_threshold_px`, and `max_dead_swipes_per_page_load`. Skips surfaces like canvas and video.\n\n**Error Tracking added issue-based rate limits and deeper React Native support** — Apply rate limits to individual error issues to prevent exploding errors from overwhelming ingestion. React Native Error Tracking now supports native crash capture for iOS and Android with symbol upload for readable stack traces.\n\n**Surveys gained a dedicated dashboard and more flexible response handling** — A new top-level Surveys dashboard shows aggregate metrics. Surveys now support an opt-in back button for multi-question flows, and `posthog.surveys.markSurveyAsSeen()` lets custom integrators respect already-seen checks.\n\n**Mobile SDKs caught up on feature flags, surveys, and macOS** — The React Native plugin now supports macOS targets. The survey modal gained a dimmed backdrop. The Android SDK ships a default Jetpack Compose Surveys UI module.\n\n**`posthog-node` added Capture V1 opt-in and person properties** — Set `POSTHOG_CAPTURE_MODE=v1` to submit events to the new ingestion endpoint. Also added `setPersonProperties()` and `unsetPersonProperties()`. The `secretKey` config is now the canonical alias for `personalApiKey`.\n\n**MCP SDK gained stable sessions for stateless servers** — The `@posthog/mcp` package now mints `Mcp-Session-Id` headers at `initialize` so any pod recovers the session without server-side storage.\n\n**Python SDK fixed flag dependency evaluation** — Local evaluation of `flag_evaluates_to: false` conditions now works correctly. Also gained opt-in `capture_mode=\"v1\"`.\n\n**OpenFeature integration shipped for web** — The `@posthog/openfeature-web-provider` package is available as the official provider for OpenFeature on the web. The `@posthog/ai` package added optional error callback support to the OpenAI Agents tracing processor.\n\n**`posthog-cli` dotenv file now configurable via environment variable** — `POSTHOG_CLI_DOTENV_FILE` accepted for callers that control the environment but not the command line (e.g., Xcode build phases).\n\n**`posthog-js` prevents silent data loss and stack overflow crashes** — Uncompressed `sendBeacon` bodies are now base64-encoded as form data to avoid CORS drops. `jsonStringify` is now circular-safe. Autocapture enforces a 1000-ancestor walk limit to prevent infinite loops on abnormal DOM trees.\n\n**`@posthog/ai` and Python `Prompts.get()` accept labels** — Fetch the prompt version a label (e.g. `production`) currently points to. Labeled fetches are cached separately, results carry the resolved `label`.\n\n**Autocapture honors opt-out on failed config fetch** — Previously a network error enabled autocapture on opted-out projects. Autocapture now keeps the last successfully received server value and stays off.\n\n**`@posthog/browser-common` published as a new package** — Initial release at 0.1.0.","releaseCount":539,"lastContributingReleaseAt":"2026-07-09T15:09:31.000Z","generatedAt":"2026-04-21T01:05:51.790Z","updatedAt":"2026-07-20T08:01:34.746Z","citations":[{"sourceUrl":"https://github.com/PostHog/posthog-js/releases/tag/%40posthog/next%400.8.0","title":"@posthog/next@0.8.0","releaseId":"rel_XcQKmNHw5vdX42R2n9UeQ","releaseWebUrl":"https://releases.sh/release/rel_XcQKmNHw5vdX42R2n9UeQ-getposthog-getserversideposthog-replaced-by-createposthog-factory"},{"sourceUrl":"https://github.com/PostHog/posthog-python/releases/tag/posthog-v7.27.0","title":"posthog-v7.27.0","releaseId":"rel_Ju446azg_aQ5lQXXpT1aT","releaseWebUrl":"https://releases.sh/release/rel_Ju446azg_aQ5lQXXpT1aT-feature-flag-called-events-minimized-for-non-experiment-flags"},{"sourceUrl":"https://github.com/PostHog/posthog-js/releases/tag/posthog-js%401.404.0","title":"posthog-js@1.404.0","releaseId":"rel_bDFJzQjkbOY0jO5r812QR","releaseWebUrl":"https://releases.sh/release/rel_bDFJzQjkbOY0jO5r812QR-dead-swipe-detection-for-touch-devices-fetch-patch-hardened"},{"sourceUrl":"https://github.com/PostHog/posthog-js/releases/tag/posthog-js%401.404.1","title":"posthog-js@1.404.1","releaseId":"rel_lmP5VwlRfPSrJFeB03ZJS","releaseWebUrl":"https://releases.sh/release/rel_lmP5VwlRfPSrJFeB03ZJS-autocapture-opt-out-honored-on-config-fetch-failure"},{"sourceUrl":"https://github.com/PostHog/posthog-js/releases/tag/%40posthog/browser-common%400.1.0","title":"@posthog/browser-common@0.1.0","releaseId":"rel_0X3b59JPH14lCJhoWVW-g","releaseWebUrl":"https://releases.sh/release/rel_0X3b59JPH14lCJhoWVW-g-posthog-browser-common-package-publishes"},{"sourceUrl":"https://github.com/PostHog/posthog-js/releases/tag/%40posthog/ai%408.4.0","title":"@posthog/ai@8.4.0","releaseId":"rel_ZNIKZu_JfRHk40bL85k3R","releaseWebUrl":"https://releases.sh/release/rel_ZNIKZu_JfRHk40bL85k3R-prompts-get-now-fetches-prompt-versions-by-label-e-g-production"},{"sourceUrl":"https://github.com/PostHog/posthog-python/releases/tag/posthog-v7.26.0","title":"posthog-v7.26.0","releaseId":"rel_pOUmgJnfsY54ILYwUIrPO","releaseWebUrl":"https://releases.sh/release/rel_pOUmgJnfsY54ILYwUIrPO-prompts-get-can-now-fetch-by-label-e-g-production"},{"sourceUrl":"https://github.com/PostHog/posthog-js/releases/tag/%40posthog/types%401.397.0","title":"@posthog/types@1.397.0","releaseId":"rel_KRLuWeS1MZU3Ob5xyR0GZ","releaseWebUrl":"https://releases.sh/release/rel_KRLuWeS1MZU3Ob5xyR0GZ-dead-swipe-detection-added-to-dead-clicks-autocapture"}]},"playbook":null,"notice":null}