MS
Metric Semantic Layer
🔵 Stable🕐 updated 2026-06-28
🔷 SkillSpec L3
pm-dataeng
Define a metric in a semantic layer so it means one thing everywhere. Use when asked to define a metric, build a semantic layer / metrics layer entry, stop 'revenue means three things' problems, or write a metric definition for dbt MetricFlow / Cube / LookML. Produces a metric definition — exact formula, the base measure & aggregation, dimensions, filters, grain, edge cases, and a tool-ready spec.
What to give it
▸The metric — its name and the business question it answers.
▸The base data — the model/table and the column(s) it's computed from.
▸The aggregation — sum, count, count distinct, average, ratio.
▸Dimensions & filters — how it can be sliced, and any default filters (exclude test accounts, internal users, refunds).
▸Tool — dbt MetricFlow, Cube, LookML, or tool-agnostic.
✅ The bar it holds itself to
Every skill in this library self-verifies — these are this skill's own quality checks, straight from its definition.
✓Has both a plain-English and an exact definition
✓States the base measure, aggregation, and (for ratios) numerator/denominator
✓Default filters are explicit, so every tool returns the same number
✓Additivity is addressed (which dimensions it can/can't be summed across)
✓Edge cases (nulls, dedup, timezone, late data) are handled
✓A tool-ready spec is provided, not just prose
⚠️ What it refuses to do
Do not leave the definition fuzzy — "active users" without the exact rule is how three dashboards disagree
Do not omit default filters — if one tool counts test accounts and another doesn't, the metric is broken
Do not ignore additivity — summing a non-additive metric (like a distinct count) across days gives a wrong number
Do not define metrics in BI tools instead of the semantic layer — that's how definitions fork
Do not skip timezone/null/dedup edge cases — they cause the subtle, hard-to-find discrepancies
Install
npx pm-claude-skills add --agent claude # or codex · cursor · gemini · hermes
# or one-line MCP (every skill, any client):
claude mcp add pm-skills -- npx -y pm-claude-skills-mcp
Related skills
🔌 Embed this skill
Drop this on your blog, docs, or site — it renders a "Run this skill" card:
<div data-pm-skill="metric-semantic-layer"></div>
<script src="https://mohitagw15856.github.io/pm-claude-skills/embed.js" async></script>
💬 Discussion
Metric Semantic Layer is one of 750 open-source professional AI agent skills — all SkillSpec L3.
Try them all in the browser · ⭐ Star on GitHub · Browse the full catalog