analytics-events — Metabase Snowplow analytics skill for Claude Code
A skill that teaches coding agents how to add Snowplow analytics events to the Metabase frontend. Use it when tracking clicks, form submissions, and entity creation.
npx skills add metabase/metabase --skill analytics-events -a claude-codeWhat analytics-events does
The analytics-events skill covers Snowplow event tracking in the Metabase frontend. Simple events are declared where they fire: trackSimpleEvent is generic, so the payload is checked at the call site. No separate event type to declare.
The skill lists the files that matter — frontend/src/metabase/analytics/event.ts, frontend/src/metabase-types/analytics/event.ts, frontend/src/metabase-types/analytics/schema.ts — plus a checklist for naming events in snake_case and wiring a tracking function from the feature's analytics.ts into the component.
It also tells agents to stay away from metabase-types/analytics/event.ts and from adding custom schemas. That keeps the type registry small, but it means existing legacy schemas stay untouched.
What it helps with
- add click and form submission tracking to Metabase
- record events with target_id and duration_ms
- keep the central event type registry from growing
- point the agent to the right tracking functions
Example prompts for the agent
- Add tracking for when a user applies filters in the table picker
- Add an event with result and duration for moving a question to trash
- Where are analytics tracking functions declared in this repo?
How to install analytics-events
1Skills CLI (Vercel)
npx skills add metabase/metabase --skill analytics-events -a claude-code2Manually: put the files in place
~/.claude/skills/analytics-events/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/analytics-events/
1Skills CLI (Vercel)
npx skills add metabase/metabase --skill analytics-events -a codex2Manually: put the files in place
.agents/skills/analytics-events/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add metabase/metabase --skill analytics-events -a cursor2Manually: put the files in place
.cursor/skills/analytics-events/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install metabase/metabase analytics-events2Manually: put the files in place
.github/skills/analytics-events/SKILL.md1Skills CLI (Vercel)
npx skills add metabase/metabase --skill analytics-events -a gemini-cli2Platform CLI
gemini skills install https://github.com/metabase/metabase --path .claude/skills/analytics-eventsManually: put the files in place
.devin/skills/analytics-events/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add metabase/metabase --skill analytics-events -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
From the same set6
The whole set →Similar
Questions about analytics-events
How do I install analytics-events in Claude Code?
Run npx skills add metabase/metabase --skill analytics-events -a claude-code. The skill ends up in ~/.claude/skills/analytics-events/SKILL.md.
What does analytics-events do?
It teaches an agent to add Snowplow events to the Metabase frontend: which files to touch, how to call trackSimpleEvent, and which fields SimpleEventSchema supports.
Should I add a new event type to metabase-types/analytics/event.ts?
No. The skill explicitly says not to add types there. Simple events are declared at the call site through trackSimpleEvent; local unions stay in the feature's analytics.ts.