← MorningstarCONTENT HISTORYWHAT CHANGED · RULE-BASED ANALYSIS
Update to Morningstar
Snapshot Sep 30, 2026 · 22:50 UTC · version 6.0.0
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
{
"description": "Use when summarizing a fund or ETF with Morningstar ratings, returns, risk, holdings, fees, and caveats.",
"included_files": [
{
"relative_path": "agents/openai.yaml",
"size_in_bytes": 272
},
{
"relative_path": "assets/icon.png",
"size_in_bytes": 16548
},
{
"relative_path": "assets/icons/1 Star.svg",
"size_in_bytes": 286
},
{
"relative_path": "assets/icons/2 Star.svg",
"size_in_bytes": 437
},
{
"relative_path": "assets/icons/3 Star.svg",
"size_in_bytes": 588
},
{
"relative_path": "assets/icons/4 Star.svg",
"size_in_bytes": 739
},
{
"relative_path": "assets/icons/5 Star.svg",
"size_in_bytes": 890
},
{
"relative_path": "assets/icons/Above Avg Analyst.svg",
"size_in_bytes": 11052
},
{
"relative_path": "assets/icons/Above Avg Quant.svg",
"size_in_bytes": 11599
},
{
"relative_path": "assets/icons/Average Analyst.svg",
"size_in_bytes": 6674
},
{
"relative_path": "assets/icons/Average Quant.svg",
"size_in_bytes": 7221
},
{
"relative_path": "assets/icons/Below Avg Analyst.svg",
"size_in_bytes": 10396
},
{
"relative_path": "assets/icons/Below Avg Quant.svg",
"size_in_bytes": 10935
},
{
"relative_path": "assets/icons/Bronze-Lrg.svg",
"size_in_bytes": 3967
},
{
"relative_path": "assets/icons/Gold-Lrg.svg",
"size_in_bytes": 989
},
{
"relative_path": "assets/icons/High Analyst.svg",
"size_in_bytes": 2686
},
{
"relative_path": "assets/icons/High Quant.svg",
"size_in_bytes": 3233
},
{
"relative_path": "assets/icons/Low Analyst.svg",
"size_in_bytes": 1813
},
{
"relative_path": "assets/icons/Low Quant.svg",
"size_in_bytes": 2355
},
{
"relative_path": "assets/icons/MPRS 100plus.svg",
"size_in_bytes": 12080
},
{
"relative_path": "assets/icons/MPRS.svg",
"size_in_bytes": 12080
},
{
"relative_path": "assets/icons/NR-Lrg.svg",
"size_in_bytes": 1830
},
{
"relative_path": "assets/icons/Negative-Lrg.svg",
"size_in_bytes": 1339
},
{
"relative_path": "assets/icons/Neutral-Lrg.svg",
"size_in_bytes": 1030
},
{
"relative_path": "assets/icons/Silver-Lrg.svg",
"size_in_bytes": 1952
},
{
"relative_path": "assets/icons/UR-Lrg.svg",
"size_in_bytes": 2243
},
{
"relative_path": "assets/logotype-usage-color-negative-white-red50.png",
"size_in_bytes": 16144
},
{
"relative_path": "assets/template.html",
"size_in_bytes": 45435
},
{
"relative_path": "references/design_guide.md",
"size_in_bytes": 7546
},
{
"relative_path": "references/full-workflow.md",
"size_in_bytes": 25334
},
{
"relative_path": "scripts/chart_builders.py",
"size_in_bytes": 15799
},
{
"relative_path": "scripts/icon_embedder.py",
"size_in_bytes": 8795
},
{
"relative_path": "scripts/placeholder_defaults.py",
"size_in_bytes": 9417
},
{
"relative_path": "scripts/render.py",
"size_in_bytes": 11170
},
{
"relative_path": "scripts/test_render.py",
"size_in_bytes": 7877
},
{
"relative_path": "scripts/utils.py",
"size_in_bytes": 938
}
],
"name": "fund-summarizer",
"skill_md_contents": "---\r\nname: fund-summarizer\r\ndescription: Use when summarizing a fund or ETF with Morningstar ratings, returns, risk, holdings, fees, and caveats.\r\n---\r\n\r\n# Fund Summarizer\r\n\r\nCreate a concise fund summary or report using the connected Morningstar app as the data source.\r\n\r\n## Guardrails\r\n\r\n- Use only data returned by the Morningstar app in the current session.\r\n- Do not infer missing values, add outside research, predict performance, or give investment advice.\r\n- Show unavailable numeric values as `--` and unavailable text as `N/A`. Distinguish missing data from tool failure.\r\n- Supported investment types are ETFs, open-end funds, and closed-end funds. If the user asks for an equity or unsupported security, explain that this skill is fund-focused and ask for a supported fund.\r\n- Preserve Morningstar terminology for ratings, categories, benchmarks, and analyst research.\r\n- Do not read script source files to understand the data schema — use `references/full-workflow.md` instead. You may invoke `scripts/render.py` when the user explicitly requests an HTML report.\r\n- Do not write helper scripts or render wrappers to produce the HTML report — assemble the data dict inline and call `render_report` once.\r\n\r\n## Formatting Rules\r\n\r\n| Value type | Rule |\r\n|---|---|\r\n| Percentages and ratios | 2 decimal places (e.g. `8.23%`, `1.05`) |\r\n| Category ranks, MPRS | Whole number (e.g. `47`, `82`) |\r\n| Currency amounts | Raw number with commas, no symbol (e.g. `1,234.56`) |\r\n| Large AUM / flows | B/M compact, no symbol (e.g. `1.23B`, `456.70M`) |\r\n| Dates | YYYY-MM-DD |\r\n| Missing numeric | `--` |\r\n| Missing text | `N/A` |\r\n\r\n## Workflow\r\n\r\nFor broad summaries, detailed reports, or any HTML report, read `references/full-workflow.md` before retrieving data. It preserves Morningstar's partner-authored datapoint map, missing-data rules, structured report inputs, and renderer contract.\r\n\r\n1. Resolve the fund from ticker, name, or Morningstar identifier. Ask only if the match is ambiguous.\r\n2. Retrieve all fund data in parallel batches — fire these simultaneously, do not wait for one before starting the next:\r\n - **Core metadata + ratings/IP** in one `morningstar_data_tool` call\r\n - **Performance, risk, and monthly returns** (HP010, trailing 10 years) in one `morningstar_data_tool` call\r\n - **Holdings** in one `morningstar_data_tool` call\r\n - **Analyst research** via `morningstar_analyst_research_tool`\r\n - **Top holdings** via `morningstar_fund_holdings_tool`\r\n3. Retrieve benchmark data in one `morningstar_data_tool` call: base currency, HP010 monthly returns (trailing 10 years), and trailing/annual returns. Fire this as soon as step 2 batch A returns (you only need the benchmark ID from it).\r\n4. Build the smallest useful deliverable for the user request. Use Markdown by default; create self-contained HTML only if the user explicitly asks for an HTML report or a sharable artifact. \r\n\r\n## HTML Report Support\r\n\r\nWhen creating an HTML report, use `scripts/render.py`. It reads `assets/template.html`, `assets/icons/`, and the Morningstar logo asset, with visual guidance in `references/design_guide.md`. The renderer produces a self-contained HTML file — no PDF export.\r\n\r\n## Output\r\n\r\nUse this order:\r\n\r\n1. Morningstar disclosure: AI-generated analysis using Morningstar data; informational only, not investment advice.\r\n2. Fund snapshot.\r\n3. Ratings and analyst context.\r\n4. Performance and category-rank context.\r\n5. Risk and portfolio context.\r\n6. Fees, flows, and operational details.\r\n7. Data-availability notes and caveats.\r\n\r\nKeep the summary factual and skimmable. For broad requests, include the main tables and a short neutral narrative. For narrow questions, answer only the requested metric or section. If the user asks for an HTML report, produce a single file with all sections, tables, and charts. For other requests, use Markdown with tables and bullet points as needed."
}SHA-256 of public snapshot: dccb7ae8cc2f472959f9cd57c4b3df339de458de76a03745d35ddf739f580fca