Summary
Update the create-dashboard skill (both .claude/skills/create-dashboard/SKILL.md and cmd/skill_templates/create-dashboard/SKILL.md) to a stronger version that emphasizes visualization quality, truthful charting, and a structured workflow — not just DAC authoring mechanics.
Motivation
The current skill is mostly a syntax reference. It describes how to write YAML/TSX, connections, and named queries, but does not guide the agent on:
- How to approach a dashboard analytically (question-first, inspect data, prefer few strong charts).
- Visualization best practices (truthful axes, no pie/3D defaults, accessibility, encoding clarity).
- A reproducible CLI workflow (
dac validate → dac check → dac query → dac serve).
- A review checklist before declaring a dashboard done.
Result: agents currently produce technically valid dashboards that can still be misleading, cluttered, or under-explained.
Changes
Metadata
- Update
description to mention semantic models, CLI validation workflows, and visualization design.
New sections
- Workflow — 8-step ordered process: inspect data → choose YAML/TSX → smallest dashboard →
dac validate → dac check → dac query → dac serve --port 8321 (always surface http://localhost:8321) → visual review.
- Core Dashboard Rules — start from the analytical question; match chart type to task; make each chart self-explanatory (title, takeaway, sources, units, legend). Introduces the default 3-widget pattern: text title → chart → text footnote.
- Truthful Visualization Defaults — zero-baseline for bars/area, no pie by default, no 3D, no default dual y-axes, labeled log scales, sorted categorical bars, consistent comparison scales, explicit benchmarks, clear actuals vs forecasts.
- Accessibility And Readability — colorblind-safe palette, never color alone, legends/encoding keys, readable tooltips, no pre-truncated labels, no cramped charts, prefer direct labels when appropriate.
- DAC Guardrails — enumerated widget types, chart types, and the rule to only use supported schema properties.
- Query Sources — mutually exclusive list (
query, sql, file, metric, direct semantic fields).
- Practical DAC Constraints —
snake_case output columns, compensate for weak legends with nearby text, keep semantic logic declarative.
- Review Checklist — 10-point pre-signoff list.
Removed / simplified
- Drop
.bruin.yml Connection Config section and themes/ layout entry (out of skill scope).
- Drop
dac init from the commands block; add dac ls and a port flag (--port 8321).
- Drop the separate Semantic Dashboard YAML example; keep one focused YAML example using the title/chart/footnote pattern.
- Simplify the TSX example to one metric widget; remove duplicate authoring rules now covered by the checklist.
- Fold Named Queries into Query Sources.
Files touched
.claude/skills/create-dashboard/SKILL.md
cmd/skill_templates/create-dashboard/SKILL.md
Reference source for the new content: data_playground/shanghai-v1/.claude/skills/create-dashboard/SKILL.md.
Summary
Update the
create-dashboardskill (both.claude/skills/create-dashboard/SKILL.mdandcmd/skill_templates/create-dashboard/SKILL.md) to a stronger version that emphasizes visualization quality, truthful charting, and a structured workflow — not just DAC authoring mechanics.Motivation
The current skill is mostly a syntax reference. It describes how to write YAML/TSX, connections, and named queries, but does not guide the agent on:
dac validate→dac check→dac query→dac serve).Result: agents currently produce technically valid dashboards that can still be misleading, cluttered, or under-explained.
Changes
Metadata
descriptionto mention semantic models, CLI validation workflows, and visualization design.New sections
dac validate→dac check→dac query→dac serve --port 8321(always surfacehttp://localhost:8321) → visual review.query,sql,file,metric, direct semantic fields).snake_caseoutput columns, compensate for weak legends with nearby text, keep semantic logic declarative.Removed / simplified
.bruin.ymlConnection Config section andthemes/layout entry (out of skill scope).dac initfrom the commands block; adddac lsand a port flag (--port 8321).Files touched
.claude/skills/create-dashboard/SKILL.mdcmd/skill_templates/create-dashboard/SKILL.mdReference source for the new content:
data_playground/shanghai-v1/.claude/skills/create-dashboard/SKILL.md.