From pigment
Guides querying, exploring, and analyzing existing data in a Pigment workspace. Covers metric discovery, dimension breakdowns, filtering, and multi-step analysis.
How this skill is triggered — by the user, by Claude, or both
Slash command
/pigment:analyzing-pigment-dataThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
This `SKILL.md` is self-contained. Read it fully before performing any data analysis.
This SKILL.md is self-contained. Read it fully before performing any data analysis.
This skill teaches you how to answer analytical questions using data that already exists in a Pigment workspace. It covers how to discover what data is available, how to formulate effective queries, how to interpret results, and how to structure multi-step analyses.
This skill is for read-only exploration and analysis. If the user wants to create, modify, or configure application objects (metrics, dimensions, formulas, boards), use the relevant modeling skills instead.
Pigment organizes data in a multidimensional model:
Country and Month stores one value per country per month.France, Germany, US are items of the Country dimension.Country dimension may have a Region property grouping countries into EMEA, AMER, APAC. Property dimensions (e.g. Country > Region) can be used as regular dimensions for breakdowns and filters.When analyzing data, you query a metric and optionally:
Country = France, Germany)Follow this sequence for every analytical question:
Use get_applications to list available applications and obtain application IDs.
Never fabricate IDs — always retrieve them from tool responses.
Use get_ai_metrics to list AI-enabled metrics in the application. Only metrics with AI Search enabled can be queried via natural language.
If a metric the user mentions is not in the list, possible reasons:
In these cases, inform the user and suggest they check their Pigment workspace settings.
Use get_metric_description to inspect a metric before querying it. This reveals:
Always call this before your first query on a metric. It prevents invalid queries and helps you formulate precise requests.
Use query_data to retrieve data using natural language. Formulate your query by specifying:
After receiving data:
If the user asks about multiple metrics (e.g. "Compare Sales and Costs"), query each metric separately and combine the results yourself. Never request derived expressions like "Sales / Costs" in a single query.
The query tool cannot filter by metric values (e.g. "top 10", "greater than 1M", "largest change"). Instead:
Item-based filtering is supported (e.g. filter to Country = France).
Queries have limits on the number of values returned. If a query exceeds the limit:
Text data does not support numeric aggregation:
Use get_metric_description to check which dimensions are required.
Find the main contributors to a metric value.
Example: "Find the top 5 countries contributing to Sales"
Sales broken down by CountryCompare two items of the same dimension within a metric.
Example: "Compare Sales in FY24 vs FY25 by Product"
Sales broken down by Product, filtered to Year = FY24Sales broken down by Product, filtered to Year = FY25Always specify: the metric, the dimension to compare on, the two items, and any breakdown dimensions.
Compare two different metrics along shared dimensions.
Example: "Compare Sales and Costs by Department"
Sales broken down by DepartmentCosts broken down by DepartmentBreakdowns must only use dimensions shared by both metrics.
Analyze how a metric evolves over time.
Example: "Show Revenue trend by Month for the last year"
Revenue broken down by Month (with appropriate time filters)Always specify: the metric, the time dimension, and the time range.
Complex questions often require a discovery phase followed by deeper analysis. Break these into explicit steps.
Example: "Analyze Sales performance — find the top regions and drill into their best products"
Sales broken down by Region → identify top 3 regionsSales broken down by Product, filtered to that region → identify top productsEach step should be self-contained: specify the metric, breakdowns, and filters explicitly. Do not rely on implicit context from previous steps when formulating queries.
User requests are often imprecise. Follow these rules in priority order:
get_ai_metrics or get_metric_description to identify likely matches| Ambiguity | Example | How to resolve |
|---|---|---|
| Metric name | "Show me revenue" (multiple revenue metrics exist) | List the candidates and ask which one |
| Time range | "Last quarter" (fiscal vs calendar? which year?) | Ask for clarification or check available time dimension items |
| Comparison target | "Compare against plan" (Budget? Forecast? Target?) | List available scenario/version items |
| Breakdown level | "By region" (geographic region? business region?) | Check available dimensions and ask if ambiguous |
| Scope | "Sales performance" (all products? all countries?) | Ask if they want the full scope or a specific subset |
Querying tools is expensive. Do not call them until you are confident the user's intent is clear.
npx claudepluginhub gopigment/ai-plugins --plugin pigmentProvides the mental model and architecture decisions for designing Pigment applications: dimensions, metrics, transaction lists, tables, calendars, and folders.
Defines metrics using a standardized template covering plain English definition, formula, components, segmentation, data sources, thresholds, limitations, and drivers. Ensures clarity in analysis.
Produces complete metrics specs for product areas: names, formulas, data sources, segmentation, SQL/event tracking, thresholds. Use for KPI definition or feature instrumentation.