Install any skill in seconds. Free to start, no credit card required.
Get Started Free →langfuse/posthog-instrumentation
Product analytics with posthog.
Passed 20 of 22 test cases with the skill, and 9 of 22 without it.
and 17 more in the full report
14 fixed7 passed either way0 still failing2 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 14 test cases the skill fixed. Same model, same prompt, with and without the skill.
We are defining properties for an event that tracks when a search query was executed and whether fast mode was enabled. What naming conventions must be followed for the boolean and date properties?
| Checked | Without skill | With skill |
|---|---|---|
| Prefixes boolean properties with is or has | Missed | Passed |
| Suffixes date and time properties with Date or Timestamp | Missed | Passed |
The instructions your model reads when the skill loads.
One idea: every event exists to answer a question ("how do people filter?", "v3 vs v4?"), and it captures shape/metadata — NEVER raw values. If you cannot name the question an event answers, do not add it. If a property could contain user content, that is a bug.
When adding a meaningful user action to web/**, decide explicitly whether it
should emit an event — do not skip the question silently.
usePostHogClientCapture() → capture(eventName, props?)
(usePostHogClientCapture.ts).
The component calls the hook's capture — it never imports or touches
posthog directly. The only client-side exceptions are app-shell
infrastructure in _app.tsx ($pageview, identify, register).resource:action, snake_case action. Enforced by the typed
registry — the events object + EventName type in that file. New events
MUST be added to the registry or they will not typecheck (e.g.
saved_views:view_selected, table:filter_builder_open). Names are static
strings only — never interpolate (a page_view_${name} explodes into
un-analyzable definitions). Event names cannot be renamed after they exist —
version instead (…_v2).objectAdjective (filterType,
valueCount), is/has prefix for booleans (isV4, hasFreeText),
Date/Timestamp suffix for times.test cases passed, vs 9 / 22 without
More skills from the same source and nearby in the registry, with their headline benchmark lift.