Visualization
Vydává ClickHouse chart-spec JSON pro čárové/sloupcové/koláčové grafy — renderuje se pouze uvnitř aplikace DataStoria
Funguje s nastavením
Co umí
Převádí ClickHouse SQL dotaz na `chart-spec` JSON blok, který vybírá typ grafu (line, bar, pie, table) nejprve z explicitních uživatelských klíčových slov a poté z tvaru dotazu, a nastavuje název, šířku a umístění legendy podle pevných pravidel. Spouští se, když uživatel požádá o graf, diagram, vykreslení, trend nebo časovou řadu dat ClickHouse. Jedná se o dovednost v aplikaci pro webové rozhraní DataStoria: povinný krok `validate_sql` a renderer `chart-spec` oba žijí v této aplikaci, takže mimo DataStoria zůstává emitovaný blok neaktivním textem.
Testovací report
Klonováno do dočasného HOME a zkopírován adresář dovednosti; frontmatter parsován pomocí PyYAML s přítomností name+description, a tři zdroje, které tělo jmenuje (sql-expert/SKILL.md, clickhouse-system-queries/SKILL.md, references/system-query-log.md), všechny vrátily HTTP 200 — žádné curl|sh, žádné base64, žádné pevně zakódované cesty /Users. Napsal jsem dva artefakty pro stejný požadavek (denní commity únor 2021, SQL již dodáno, "as a line chart"): základní verze vydala ```python matplotlib skript plus zástupný ```mermaid xychart, zatímco spuštění řízené dovedností vydalo jediný ```chart-spec JSON blok s type/titleOption/width/legendOption.placement:"none"/datasource.sql. NEMOHL jsem provést povinný krok pracovního postupu (b) `validate_sql` — grep jej umístil do src/lib/ai/tools/clickhouse/validate-sql.ts, nástroj aplikace DataStoria vyžadující živý ClickHouse, a grep našel `chart-spec` parsovaný pouze src/components/chat/message/message-markdown.tsx — takže mimo tuto aplikaci je výstup dovednosti nevykreslený kódový blok a srovnání není skutečným měřením schopností. Posouzení spouštěcích frází: "Show me a line chart of query duration over the last 24h from system.query_log" (načíst, správně), "Visualize the top 10 tables by disk usage as a bar chart" (načíst, správně), "Give me a pie chart of ClickHouse queries by user" (načíst, správně), "Explain why my ClickHouse merge is slow" (přeskočit, správně), "Plot my CSV sales data as a bar chart with matplotlib" (načetl bych to — popis říká pouze "charts, graphs, plots" bez kvalifikátoru ClickHouse, takže falešně pozitivní na obecné grafy) = 4/5.
Testováno: 2026-07-31 · Claude Code 2.x (agent harness)
Instalace
git clone --depth 1 https://github.com/FrankChen021/datastoria.git /tmp/visualization-src mkdir -p ~/.claude/skills cp -R /tmp/visualization-src/resources/skills/visualization ~/.claude/skills/visualization cp -R /tmp/visualization-src/resources/skills/sql-expert ~/.claude/skills/sql-expert cp -R /tmp/visualization-src/resources/skills/clickhouse-system-queries ~/.claude/skills/clickhouse-system-queries # The last two copies are NOT optional: the visualization body orders the agent to load # `sql-expert` before generating SQL, and `clickhouse-system-queries` for system.query_log work. # HOST DEPENDENCY — this is a DataStoria in-app skill, not a standalone Claude Code skill. # Step (b) of the workflow is a mandatory `validate_sql` tool call; that tool is defined in # src/lib/ai/tools/clickhouse/validate-sql.ts and needs a live ClickHouse connection. # The `chart-spec` fenced block it outputs is parsed only by # src/components/chat/message/message-markdown.tsx. In a plain Claude Code terminal the block # renders as inert text and no chart is drawn. # To get the intended behaviour, run DataStoria itself (npm install && npm run dev in # /tmp/visualization-src) and configure a ClickHouse connection plus an AI model.
Příkazy a ukázkové prompty
/visualizationVydává ClickHouse chart-spec JSON pro čárové/sloupcové/koláčové grafy — renderuje se pouze uvnitř aplikace DataStoria
Skilly se spouštějí běžnými požadavky — žádné příkazy k zapamatování. Po instalaci ho aktivují prompty jako tyto (anglicky):
Chart this data as a time seriesCreate a bar chart of quarterly revenueTurn this dataset into a pie chart