From pigment
Guides setting and inferring metric default formatting: decimals, currency, percent, K/M/bp scaling, thousand separators, sign handling, text mode, boolean display. Load when creating or updating a metric's format.
How this skill is triggered — by the user, by Claude, or both
Slash command
/pigment:formatting-and-highlightingThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
**Progressive Disclosure Pattern**: This `SKILL.md` is the entry point. As more formatting topics land (conditional formatting, highlighting), they will live as sibling files in this directory.
Progressive Disclosure Pattern: This SKILL.md is the entry point. As more formatting topics land (conditional formatting, highlighting), they will live as sibling files in this directory.
Required workflow:
tool:create_metric / tool:update_metric.Load this skill when:
tool:create_metric) — Creating a Metric that you intend to use to display data in a board.tool:update_metric with default format) — any request that touches decimals, prefix, suffix, currency, percent, K/M/bp scaling, thousand separator, sign / zero / negative handling, text mode, or boolean display.Use cases in which this skill is useful: "show as percent", "in millions", "no decimals", "two decimals", "prefix with $", "currency", "thousand separator", "format as", "display as", "change decimals", "show as K", "basis points", "rich text", "checkbox".
Skip this skill for tool:update_metric calls that don't touch default format (renaming a metric, changing its dimensions, editing its description).
Out of scope for this skill:
tool:create_metric / tool:update_metric. Views have no number-formatting tools. A metric's default format applies to every View, Board, KPI, Grid, and Chart that displays it. Set it once on the metric.numberFormatOptions is required inside default format. Pass {} if you have nothing to set for number formatting (e.g. you only want to set textFormatOptions). Do not omit the key.Important nuances:
multiplier is numeric, not a string alias. Use 0.01 for percent, 0.001 for thousands, 0.000001 for millions, 10000 for basis points.multiplierSuffix is the visual marker ("%", "K", "M", "bp") shown after the value. Pair it with the matching multiplier.prefix / suffix are independent of multiplier / multiplierSuffix and stack on either side of the value.Apply the first matching row. Stop at the first match.
| Name signal | Formatting to apply |
|---|---|
Contains %, Rate, Ratio, Margin, Growth, Share, Yield, Efficiency | multiplier: 0.01, multiplierSuffix: "%", numFractionDigits: 1 (use 2 if name implies precision, e.g. Margin %) |
Contains Revenue, Cost, Spend, Budget, Price, ARR, MRR, LTV, CAC, Salary, Fee, Expense, Income | prefix: "$" (or the currency the modeler specified). Consider multiplier: 0.000001 + multiplierSuffix: "M" or multiplier: 0.001 + multiplierSuffix: "K" when context implies scale (e.g. "in millions") |
Contains Headcount, Count, Number of, #, Units, Quantity, FTE | numFractionDigits: 0, no multiplier |
Contains bp, Basis Point | multiplier: 10000, multiplierSuffix: "bp" |
Friendly name ends with ($) | prefix: "$" |
Friendly name ends with (%) | multiplier: 0.01, multiplierSuffix: "%" |
Use when no name signal matched.
| Metric type | Default |
|---|---|
Integer | numFractionDigits: 0 |
Number | numFractionDigits: 0 (raise to 1 or 2 when name/formula implies fractional precision: rates, ratios, averages, unit prices) |
Text | textDisplayMode: "Text" |
Text — name contains comment, note, description, report, URL, link | textDisplayMode: "RichText" |
Boolean | booleanDisplayMode: "Checkbox" |
Percentage metric — EE_CALC_Attrition_Rate (Number):
{
"numberFormatOptions": {
"multiplier": 0.01,
"multiplierSuffix": "%",
"numFractionDigits": 1
}
}
Currency metric in millions — REV_OUTPUT_ARR ($M) (Number):
{
"numberFormatOptions": {
"prefix": "$",
"multiplier": 0.000001,
"multiplierSuffix": "M",
"numFractionDigits": 1
}
}
Headcount — EE_RES_Total_Headcount (#) (Integer):
{
"numberFormatOptions": {
"numFractionDigits": 0
}
}
Boolean gate — ADM_Is_Active (Boolean):
{
"numberFormatOptions": {},
"booleanFormatOptions": {
"booleanDisplayMode": "Checkbox"
}
}
Rich text note — ADM_Variance_Comment (Text):
{
"numberFormatOptions": {},
"textFormatOptions": {
"textDisplayMode": "RichText"
}
}
Conditional formatting and cell-level highlighting are UI-only today — the agent cannot apply them.
npx claudepluginhub gopigment/ai-plugins --plugin pigmentHelps choose the correct aggregationAxisFormat for PostHog TrendsQuery insights to display duration, percentage, currency, and compact numbers without manual formula-based unit conversions.
Defines metrics using a standardized template covering plain English definition, formula, components, segmentation, data sources, thresholds, limitations, and drivers. Ensures clarity in analysis.
Guides you step-by-step through defining a business metric (aggregation) on a Honeydew entity. Covers SQL expression building and pushes to Honeydew via the MCP tools.