visualize-data

Installation
SKILL.md

Related Skills

Use $metric-diagnostics when the visual needs an explanation of a metric movement.

Use $build-report when the visual is part of a durable analytical report.

Data Visualization

Create quantitative visuals that are analytically sound, immediately readable, and polished enough to ship in a report, memo, slide, dashboard, notebook, widget, or HTML artifact. Treat charts as evidence for a takeaway. Redesign charts that are visually attractive but analytically weak, and revise charts that are technically correct but hard to interpret.

Runtime Delivery Routing

Whenever mode = work_mode is positively identified, regardless of surface, do not render with Data Analytics MCP chart or table widgets, do not call render_chart or render_table for inline delivery, and do not select a visible MCP artifact as the visual surface. This branch applies only after another workflow has already selected inline delivery; it does not choose inline over a report, dashboard, HTML, notebook, or other surface. For an already-selected inline visual, prefer native Work Mode rendering and read native-inline-visualizations.md to choose and invoke charts_widget_v2 or app_block. For one supported bar, line, pie, or scatter chart, treat charts_widget_v2 as directly surfaced in this runtime and emit its live genui content reference before considering fallback; do not self-declare it unavailable or search for it. The complete outer shape is genui{"charts_widget_v2":{"content":{...}}}: replace {...} with the real chart spec and emit the reference without Markdown backticks. The inner chart spec alone is not a response; do not print bare JSON, plain HTML, or a code fence. Keep app_block conditional on the host surfacing it. When a durable report or dashboard workflow automatically selects sites-app, shape visuals with the MCP artifact chart contract so the validated runtime can be exported to Sites, but skip the visible MCP render. If the Visualize plugin is installed, also consult and follow its current visualization guidance for native chart or app-block authoring, while keeping this skill's delivery gate and fallback order authoritative. If an emitted native visual is rejected or fails to render, use a reproducible static/Matplotlib chart that fits a non-MCP surface; use a compact table only if no visual renderer can be delivered. Use static or Matplotlib charting for this native-render failure fallback or when the user explicitly asks for Python, a static image/file, notebook-oriented output, or export. A successful Data Analytics MCP tool result is not delivery confirmation in Work Mode, so do not say a visual was plotted or rendered above unless the selected native or non-MCP surface actually rendered. MCP servers and other callable tools remain valid data sources.

Whenever the selected report or dashboard delivery surface is HTML, define each visual as a native chart in the canonical artifact.json accepted by validate_artifact, backed by reviewed snapshot.datasets rows and canonical source metadata. The portable builder in $build-report uses the shared artifact-app chart renderer and produces the semantic no-script/print/conversion representation. This applies to ChatGPT Desktop explicit HTML, Work Mode fallback HTML on any surface, and HTML used for PDF, Google Docs, or Google Slides conversion.

Outside positively identified Work Mode, keep the existing surface selection rules unchanged.

Chart Selection

Installs
8
Repository
openai/plugins
GitHub Stars
7.5K
First Seen
Sep 29, 2026