Install any skill in seconds. Free to start, no credit card required.
Get Started Free →Audit PostHog experiments and feature flags for configuration issues, staleness, and best-practice violations. Read when the user asks to audit, health-check, or review experiments or feature flags, check flag hygiene, or verify experiment setup.
.claude/skills/kunanonj-cursor-plugin-posthog-auditing-experiments-flags/SKILL.md| Test case | Without → With | Effect | Δ tokens | Δ turns |
|---|---|---|---|---|
| case-12 | ✗→✓ | ▲ Improved | -19% | 0% |
| case-13 | ✗→✓ | ▲ Improved | 92% | 0% |
| case-15 | ✗→✓ | ▲ Improved | 1% | 0% |
| case-16 | ✗→✓ | ▲ Improved | -21% | 0% |
| case-17 | ✗→✓ | ▲ Improved | -20% | 0% |
This skill teaches you how to run configuration audits on experiments and feature flags. All checks use read_data and list_data — no SQL queries are needed for Phase 1 checks.
When the user asks about a specific experiment or flag:
read_data (e.g., read_data("experiments", id) or read_data("feature_flags", id)).[Experiment: name](/experiments/id) or [Flag: key](/feature_flags/id).When the user asks to audit all experiments or all flags:
list_data (e.g., list_data("experiments") or list_data("feature_flags")).When the user asks for a comprehensive audit of both experiments and flags:
list_data("experiments") and all flags via list_data("feature_flags").create_notebook for easier navigation. Otherwise report inline.For each finding, include:
🔴 CRITICAL, 🟡 WARNING, or 🔵 INFOExample:
> 🟡 WARNING — Flag integration · Experiment: checkout-redesign > The linked feature flag is inactive (paused). Traffic is not being split. > Action: Re-enable the flag or end the experiment.
Some checks require activity logs, which may not be available via read_data. If activity log data is unavailable:
checkActivityHistory (experiment check) entirely.> _Skipped: Activity history checks (activity logs not available via current tools)_
If a read_data or list_data call fails for some entities:
| Case | Status | Duration (ms) | Turns | Tokens | Tool calls | ||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Without | With | Δ | Without | With | Δ | Without | With | Δ | Without | With | Δ | ||
case-04 | pass→pass | 19,679 | 12,924 | -34% | 1 | 1 | 0% | 3,948 | 3,289 | -17% | 0 | 0 | — |
case-05 | pass→pass | 10,065 | 6,808 | -32% | 1 | 1 | 0% | 2,207 | 2,247 | +2% | 0 | 0 | — |
case-01 | fail→fail | 17,432 | 4,930 | -72% | 1 | 1 | 0% | 2,721 | 1,091 | -60% | 0 | 0 | — |
case-02 | fail→fail | 5,410 | 4,050 | -25% | 1 | 1 | 0% | 453 | 1,000 | +121% | 0 | 0 | — |
case-03 | fail→fail | 34,801 | 5,293 | -85% | 1 | 1 | 0% | 6,182 | 1,135 | -82% | 0 | 0 | — |
case-06 | fail→fail | 13,535 | 10,114 | -25% | 1 | 1 | 0% | 2,639 | 2,874 | +9% | 0 | 0 | — |
case-07 | fail→fail | 7,943 | 4,723 | -41% | 1 | 1 | 0% | 1,311 | 1,008 | -23% | 0 | 0 | — |
case-08 | fail→fail | 10,255 | 4,951 | -52% | 1 | 1 | 0% | 310 | 1,097 | +254% | 0 | 0 | — |
case-09 | pass→pass | 14,581 | 11,090 | -24% | 1 | 1 | 0% | 1,587 | 2,658 | +67% | 0 | 0 | — |
case-10 | fail→fail | 15,136 | 31,538 | +108% | 1 | 1 | 0% | 2,719 | 5,288 | +94% | 0 | 0 | — |
case-11 | fail→fail | 16,017 | 5,421 | -66% | 1 | 1 | 0% | 2,559 | 1,050 | -59% | 0 | 0 | — |
case-12 | fail→pass | 13,768 | 5,864 | -57% | 1 | 1 | 0% | 2,000 | 1,616 | -19% | 0 | 0 | — |
case-13 | fail→pass | 4,755 | 3,109 | -35% | 1 | 1 | 0% | 679 | 1,303 | +92% | 0 | 0 | — |
case-14 | pass→pass | 11,600 | 6,102 | -47% | 1 | 1 | 0% | 1,798 | 1,927 | +7% | 0 | 0 | — |
case-15 | fail→pass | 8,250 | 2,606 | -68% | 1 | 1 | 0% | 1,192 | 1,209 | +1% | 0 | 0 | — |
case-16 | fail→pass | 11,050 | 2,641 | -76% | 1 | 1 | 0% | 1,667 | 1,309 | -21% | 0 | 0 | — |
case-17 | fail→pass | 9,032 | 2,699 | -70% | 1 | 1 | 0% | 1,576 | 1,260 | -20% | 0 | 0 | — |
case-18 | fail→pass | 10,271 | 3,425 | -67% | 1 | 1 | 0% | 1,679 | 1,437 | -14% | 0 | 0 | — |
case-19 | fail→pass | 7,867 | 2,412 | -69% | 1 | 1 | 0% | 1,472 | 1,291 | -12% | 0 | 0 | — |
case-20 | fail→pass | 6,731 | 5,315 | -21% | 1 | 1 | 0% | 1,216 | 1,836 | +51% | 0 | 0 | — |
case-21 | fail→fail | 10,045 | 3,045 | -70% | 1 | 1 | 0% | 1,655 | 1,379 | -17% | 0 | 0 | — |
case-22 | fail→pass | 12,223 | 2,313 | -81% | 1 | 1 | 0% | 2,225 | 1,259 | -43% | 0 | 0 | — |
DecimalAI ran this skill against gemini-3.6-flash twice over the same eval suite — once with the skill loaded and once without — and compared the two runs case by case. 22 cases were attempted, and 15 counted toward the lift figure. The other 7 produced results that are not comparable between the two arms, so they are excluded from the headline rather than averaged into it. The headline lift of +41 percentage points is the difference between those two pass rates over the 15 comparable cases.
Without the skill loaded, the model failed this case. With it loaded, the same prompt on the same model passed. This is one improved case from the latest verified run; every case, including any that regressed, is in the table above.
Other measured skills in the registry, with their headline benchmark lift.