← JoomPulseCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to JoomPulse
Snapshot Sep 30, 2026 · 22:52 UTC · version 2.0.1
Collection source: not recorded for this historical snapshot.
First saved snapshot
No earlier snapshot is available to establish a change.
Compare saved observations
Download comparison JSONFull technical diff · 0 changed fields
Full snapshot data
{
"name": "category-monitor",
"description": "Monitors one Mercado Livre (Brasil) category's aggregate health via JoomPulse — estimated sales, number of products and catalog products, active sellers, the seller-medal distribution, and the monopolization level. Each run builds today's snapshot table and offers it for download; to see what changed, the user sends a table from a previous period and the skill shows the metric-by-metric difference. The baseline is whatever table the user supplies — no hidden session memory. Triggers: \"monitor this category\", \"what changed in this category\", \"track category sales and sellers\", and the pt-BR \"monitorar esta categoria\", \"o que mudou na categoria\", \"comparar a categoria com o período anterior\". Sales and revenue are JoomPulse estimates, not real transactions. To track one named product over time use the product-change-monitor skill; for a one-shot market-size or opportunity snapshot use the category-opportunity-index skill.",
"included_files": [],
"skill_md_contents": "---\nname: category-monitor\ndescription: >\n Monitors one Mercado Livre (Brasil) category's aggregate health via JoomPulse — estimated\n sales, number of products and catalog products, active sellers, the seller-medal\n distribution, and the monopolization level. Each run builds today's snapshot table and\n offers it for download; to see what changed, the user sends a table from a previous period\n and the skill shows the metric-by-metric difference. The baseline is whatever table the user\n supplies — no hidden session memory. Triggers: \"monitor this category\", \"what changed in\n this category\", \"track category sales and sellers\", and the pt-BR \"monitorar esta\n categoria\", \"o que mudou na categoria\", \"comparar a categoria com o período anterior\". Sales\n and revenue are JoomPulse estimates, not real transactions. To track one named product over\n time use the product-change-monitor skill; for a one-shot market-size or opportunity\n snapshot use the category-opportunity-index skill.\n---\n\n# Category Monitor\n\nThis skill tracks **one Mercado Livre (Brasil) category's aggregate health over time** — its estimated\nsales, number of products and catalog products, number of active sellers, the distribution of sellers\nacross medal tiers, and how concentrated the market is (monopolization).\n\nEach run builds **today's snapshot table** for the category and offers it as a **downloadable table**.\nTo see what changed, the user **supplies the table from a previous period** (the one this skill\nproduced before); the skill compares the two and shows the difference per metric. **The baseline is\nwhatever table the user provides — there is no hidden session memory and nothing is stored\nserver-side.** The default view is the whole category; the user may instead point it at a single\nlisting or a catalog product (a catalog product rolls up its competing listings).\n\nTo track one named product over time, use the product-change-monitor skill. For a one-shot\nopportunity / market-size snapshot, use the category-opportunity-index skill.\n\n## Prerequisites\n\n- JoomPulse MCP access is configured for the current agent environment.\n- The user names a category (or, optionally, a single listing or catalog product).\n- For a period comparison, the user supplies a previous table that this skill produced for the same\n category (pasted or uploaded). Without it, the skill produces a standalone snapshot.\n- The available JoomPulse tools can return a category's aggregate metrics and its seller-medal\n distribution.\n\nIf JoomPulse MCP access is unavailable, stop and explain that the skill requires JoomPulse MCP setup\nbefore it can monitor a category.\n\n## Scope\n\n- **Mercado Livre (Brasil) only.** Other marketplaces are out of scope.\n- **Sales and revenue are JoomPulse estimates** derived from historical listing data — not real\n transactions. Disclose this in every output.\n- **Read-only.** The skill never writes or modifies anything; it does not store the snapshot — the\n user keeps the downloadable table and brings it back next period.\n- **Language:** detect the seller's language and respond in it. Default to pt-BR.\n- **The baseline is user-supplied.** Never claim a change without a previous table to compare against,\n and never infer or fabricate one from memory.\n\n## Workflow\n\n### Step 1 — Resolve what to monitor\n\nAsk for a category if none was given, then use JoomPulse to match the free text to a category\n(disambiguate with the user when several plausible matches return). Optionally, the user can point the\nskill at a single listing or a catalog product instead.\n\n### Step 2 — Collect today's aggregates\n\nUse JoomPulse to collect, for the target: estimated sales, number of products, number of catalog\nproducts, number of active sellers, the seller-medal distribution, and the monopolization level.\n\n### Step 3 — Present today's snapshot and offer it for download\n\nRender the snapshot table for **today** (head it with the category name and the date). This table is\nthe deliverable — and **offer it as a downloadable file (`.csv` / `.xlsx`)** so the user can save it\nand bring it back next period as the baseline. On a standalone snapshot there is **no change column\nand no color-dot legend** — just metric and current value.\n\n### Step 4 — Offer comparison, and compare if a previous table is supplied\n\nInvite the user to send a previous table for the same category to compare periods. **If they provide\none**, parse its metric values, align by metric to today's snapshot, and render a comparison table\nwith the difference per metric. A difference **requires both an old and a new value** for the same\nmetric — if a metric is missing or unreadable in the supplied table, show `—`, never a fabricated\ntrend. If no previous table is supplied, the snapshot stands on its own and the user is told to save\nit for next time.\n\n## Output\n\nRespond in the seller's language (default pt-BR).\n\n**Snapshot (always):** a markdown table `| Métrica | Valor atual |` for **Vendas (estimadas),\nProdutos, Produtos de catálogo, Vendedores, Distribuição de medalhas, Monopolização**, plus a\ndownloadable `.csv` / `.xlsx` of the same data.\n\n**Comparison (only when a previous table is supplied):** a markdown table `| Métrica | Anterior |\nAtual |`. Put the change (figure or percentage point) inside the **Atual** cell, prefixed with a\nsemantic color dot:\n\n- **Vendas ↑ = 🟢**; Vendas ↓ = 🔴.\n- **Monopolização is inverted** (like cancellation rate): **down = 🟢** (easier to enter), **up = 🔴**.\n- **Produtos / Vendedores** moving is neutral context — show the change without a strong good/bad dot.\n- **Distribuição de medalhas** — show the tiers that moved (for example `platina 4 → 5`).\n\nColumn headers are words (`Métrica | Anterior | Atual`), never a bare \"Δ\" symbol. Show the color-dot\nlegend (🟢/🔴) **only** in the comparison table, where the dots actually appear — never on a plain\nsnapshot.\n\nClose with a short **Principais insights** section: with a comparison, interpret what moved; on a\nstandalone snapshot, frame it as the starting picture with no trend claims.\n\n**Disclaimer (every report):**\n\n> ⚠️ Vendas, vendedores, produtos e monopolização são estimativas do JoomPulse com base no histórico\n> de anúncios — não são transações reais. / Sales, sellers, products, and monopolization are JoomPulse\n> estimates based on historical listing data — not actual transactions.\n\n## Visualization\n\nWhen the client can render inline visuals, present metric cards and a medal-distribution chart;\notherwise fall back to the markdown tables plus text cards. Never block on visuals. The snapshot table\n(and the comparison table, when present) always render as markdown in the response text, and the\ndownloadable file mirrors what is shown.\n\nWhen inline visuals are available:\n\n- **Cards:** estimated sales, number of products, number of catalog products, and number of active\n sellers — plus the monopolization level as a value or small bar. With a comparison, you may annotate\n each card with its `anterior → atual` change.\n- **A medal-distribution bar:** sellers (or listings) split across medal tiers, using the medal\n palette — platina = purple, ouro = amber, prata = blue, sem medalha = white with a thin border\n (white needs the border to stay visible on a light background). With a previous table, note the shift.\n- **No synthesized trend line** from a single run (there is no server-side history). Only if the user\n supplies several past-period tables may you plot a simple line across those periods.\n\nPresentation rules: column headers are words, never a bare \"Δ\" symbol; show the color-dot legend only\nwhen those dots appear (the comparison table); render a chart only when the data supports it.\n\n## Notes & Guardrails\n\nThe seller should never see a system or stack error — only a friendly next step.\n\n- **No previous table supplied:** render today's snapshot only (no change column, no legend) and\n invite the user to save it for next time.\n- **Supplied table is for a different category, malformed, or unreadable:** say so plainly and fall\n back to the snapshot only; do not force a misaligned comparison.\n- **Empty or failed data:** say the data is temporarily unavailable and to try again. Never paste\n internal error text, HTTP codes, or field names to the seller.\n- **Catalog product input:** when monitoring a catalog product, note the buy-box competition (how many\n sellers compete) rather than implying a single listing.\n"
}SHA-256: eef9d96ac83a309a05e1ca538a15b50573ab3763c81ee7aaeb4b4f436f8d0d0b