Skip to content
cccskills
FreePublished on GitHub

visualize

Creates self-contained HTML charts, tables, diagrams, and dashboards for display within a conversation. It keeps figures traceable to calculations and checks readability in light and dark themes, including narrow mobile layouts, before showing the page.

OriginalShow the original description

Builds a self-contained HTML page (chart, table, diagram, dashboard) to show inline in a thread. Use before calling show_html_page, html_preview or html_render, or whenever an answer reads better as a page than as prose.

See how to install

Good for

  • Explaining numerical findings with charts
  • Presenting comparisons as tables or diagrams
  • Showing a dashboard within a conversation
  • Checking visuals across themes and mobile widths

Files included (1)

  • SKILL.md3.7 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Visualize

A page shown inline sits beside a reply, in the reader's theme, and is read in a few seconds. It earns its place only by being clearer than the paragraph it replaces. This skill owns what is particular to such a page. The data work belongs to data-scientist and the design work to frontend: load those skills for their parts instead of improvising them here.

The loop

Do these in order. Never show a page you have not looked at.

  1. Data: load data-scientist. Compute every figure with its engines (DuckDB or Polars), at the grain the reader needs, and follow its references/visualization.md for which chart answers which question. Keep the query: every number on the page must trace back to it.
  2. Design: load frontend. Use it for hierarchy, type, spacing and states. This page's constraints replace its design-system gate: the page brings no palette or fonts of its own and uses the theme the host injects (below).
  3. Build one self-contained page under the constraints below.
  4. Preview and look. Render with html_preview in dark and in light, at the reply's width and at 390 px. Read the screenshot and the console, fix what you see, and preview again. Where html_preview is not offered, open the page file in a browser through the browser skill and capture the same four views.
  5. Show it with show_html_page (OmO) or html_render (other hosts), with the height the preview measured. Then write only what the page does not already say.

Constraints of an inline page

  • No network. Inline every script, style, font and image (data: URIs); the sandbox blocks every request, so a CDN library leaves a blank chart. Draw with hand-written SVG when a library cannot be inlined.
  • Theme from the host. Color only through the injected custom properties: --background, --foreground, --muted, --muted-foreground, --card, --border, --primary, --accent, --destructive, --warning, --success, the series colors --chart-1 to --chart-6, and --font-sans, --font-mono, --radius. They hold in both themes and change live; a literal color does neither. A page opened outside the app gets only a few of them, so give each a fallback for both themes: var(--chart-2, light-dark(#0d9488, #2dd4bf)).
  • Part of the reply, not a card. Fluid width, no outer padding, border or banner. Give charts fixed pixel heights, not heights that scale with the width. A fluid SVG stretched with preserveAspectRatio="none" stretches its text too, so put axis labels in HTML beside it, positioned by percentage.
  • Readable without scripts. On the web a page first renders with scripts off, until the reader presses Run page. Put the figure itself in markup or SVG, and use scripts only for interaction.
  • Traceable. Show how the numbers were computed in a small, muted "How this was computed" block (the query or aggregation), and state caveats near the figure when they change how a number reads: dropped rows, a partial window, a small sample.
  • Designed empty and error states. No data, or a failed query, is stated in the same visual language, never as a blank frame.
  • Links. A link opens only after the reader confirms it in the app, which shows its full address. Keep data out of link addresses.

Before you show it

  • The title states the finding, not the dataset name.
  • Axis labels carry units, numbers use tabular figures and a sensible precision, and nothing clips at 390 px.
  • The series colors separate in both themes, and the console is clean.

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

ast-grep

FreeSummary

Finds and rewrites code by its syntax structure across 25 languages. Use it to locate matching calls or declarations, preview bulk changes, and run reusable YAML rules that check code or apply fixes.

  • Finding calls or functions with a specific structure
  • Previewing and applying bulk code changes
  • Checking code with reusable YAML rules
code-yeongyu/oh-my-openagent70.2KUpdated Oct 18, 2026

browser

FreeSummary

Automate forms, clicks, screenshots, and website checks in a browser where you are already signed in. A separately launched browser also supports scraping and network capture, while login or verification steps can be handed to a person.

  • Fill forms on websites where you are already signed in
  • Capture screenshots and check website behavior
  • Record network traffic in a separately launched browser
code-yeongyu/oh-my-openagent70.2KUpdated Oct 18, 2026

codex-qa

FreeSummary

Test omo Codex Light edition in an isolated environment using real Codex and a local mock model. Verify installation, plugin hooks, and terminal startup, with captured evidence and no calls to a real model API.

  • Verify installation and config.toml changes in isolation
  • Confirm plugin hooks run during a real Codex turn
  • Check terminal interface startup
code-yeongyu/oh-my-openagent70.2KUpdated Oct 18, 2026

Search local session histories across Codex, Claude Code, OpenCode, and other coding agents. Find earlier requests, inspect transcripts and child sessions, and reconstruct past work using recorded evidence, with filters for dates, projects, platforms, and models.

  • Finding work done a few days ago
  • Checking whether a migration was already completed
  • Reviewing tasks delegated to child agents
code-yeongyu/oh-my-openagent70.2KUpdated Oct 18, 2026

comment-checker

FreeSummary

Help Codex respond to automatic warnings about comments after code edits. It explains when the checker runs and directs Codex to fix the flagged comment or explain it before continuing with other work.

  • Understand a comment warning after an edit
  • Fix a comment flagged by the checker
  • Explain a flagged comment before continuing
code-yeongyu/oh-my-openagent70.2KUpdated Oct 18, 2026

dag-library

FreeSummary

Saves multi-agent workflows as named JSON files and runs them again without copying their definitions. Handles placeholders and run keys so repeated workflows can create fresh runs or deliberately reuse an existing run.

  • Saving a workflow for repeated audits
  • Running a saved workflow by name
  • Sharing workflow definitions within a project
code-yeongyu/oh-my-openagent70.2KUpdated Oct 18, 2026

See all skills by code-yeongyu

Report a problem with this skill