Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add endearqb/endearqb-skills --skill endearqb-frontend-datavizgit clone --depth 1 https://github.com/endearqb/endearqb-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/endearqb/endearqb-skills/endearqb-frontend-dataviz)<a href="https://agentmods.dev/skills/endearqb/endearqb-skills/endearqb-frontend-dataviz"><img src="https://agentmods.dev/badge/skills/endearqb/endearqb-skills/endearqb-frontend-dataviz/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/endearqb/endearqb-skills/endearqb-frontend-dataviz"><img src="https://agentmods.dev/badge/skills/endearqb/endearqb-skills/endearqb-frontend-dataviz.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00124 | $0.01084 |
| Opus 5 | $0.00062 | $0.00542 |
| Sonnet 5 | $0.00025 | $0.00217 |
| Haiku 4.5 | $0.00012 | $0.00108 |
Grade A, and why
frontend-dataviz scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 12d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
What it actually says
Data Visualization Skill(SWD 原则)
核心理念
遵循 Cole Nussbaumer Knaflic 的 Storytelling with Data 六大原则:
- 理解背景 — 谁是受众?他们需要做什么决策?
- 选择合适图表 — 见下方图表选择矩阵
- 消除杂乱 — 删除所有不传递信息的元素(网格线、3D 效果、不必要的边框)
- 引导注意力 — 用颜色/粗细/位置突出关键信息,其余降至背景色
- 像设计师一样思考 — 对齐、留白、层次
- 讲述故事 — 图表标题应是洞察,而非描述("Q3 销售额下降 18%" 而非 "Q3 销售额")
Step 1:数据分析
拿到数据后,先判断图表类型:
| 目的 | 推荐图表 |
|---|---|
| 比较类别 | 条形图(横向更易读标签) |
| 展示趋势 | 折线图 |
| 展示构成 | 堆叠条形 / 瀑布图 |
| 展示相关性 | 散点图 |
| 展示分布 | 直方图 / 箱线图 |
| 部分与整体 | 仅当类别 ≤5 时用饼图,否则用条形 |
Step 2:用 ask_user_input_v0 工具向用户提问
必须在生成任何图表前,使用 ask_user_input_v0 工具一次性提出以下两个问题。
ask_user_input_v0({
questions: [
{
question: "颜色风格?",
type: "single_select",
options: [
"专业商务(极简灰+强调色)",
"社交媒体(鲜艳多彩,高饱和)"
]
},
{
question: "是否使用拟物图表(pictograph)?",
type: "single_select",
options: [
"普通图表",
"拟物图表(用实物图标代替条形)"
]
}
]
})
Step 3:生成图表(HTML + Chart.js)
输出统一使用 HTML Artifact,内嵌 Chart.js(从 cdnjs 加载)。
颜色风格映射:
- 专业商务 → 灰色基调 +
#2563EB单强调色,其余数据点全灰#D1D5DB - 社交媒体 → 高饱和多色方案,见
references/color-palettes.md
拟物图表: 用户选择后,使用 SVG Pattern + Chart.js canvas 实现,见 references/pictograph-icons.md
SWD 视觉规范(必须遵守):
网格线:极浅灰 #F3F4F6 或隐藏
边框:chart border 设为 none
图例:仅必要时显示,放在图表上方(自定义 HTML,不用 Chart.js 默认)
标题字体:加粗,16-18px;标签:12-13px #6B7280
柱间距:categoryPercentage: 0.6, barPercentage: 0.75
图表标题规范:
- ✅ 洞察型:"华东区 Q3 营收同比下降 18%,拖累全国整体表现"
- ❌ 描述型:"各区域 Q3 营收对比"
完整代码示例见 references/chart-examples.md
Step 4:输出检查清单
- 已通过 ask_user_input_v0 收集用户偏好?
- 标题是洞察而非描述?
- 颜色方案与用户选择匹配?
- 关键数据点已高亮?
- 删除了所有装饰性杂乱元素?
- 有数据来源/时间范围注释?
参考文件
references/color-palettes.md— 配色方案references/pictograph-icons.md— 拟物图表 SVG 图标库references/chart-examples.md— HTML + Chart.js 完整示例
What ships with it
3 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 12d ago First seen · 113 lines · 124 tokens per session scan A 788c671cb45c
frontend-dataviz is a skill published in the GitHub repository endearqb/endearqb-skills (19 stars, last pushed 9d ago), licensed MIT. It adds 124 tokens to every session and 1,084 once invoked, about $0.0006 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other skills, from other repositories
storybook-story-generation
Use after React components are built (Phase 4.5 of the Figma/Canva/screenshot pipeline) or whenever a project needs Storybook coverage — auto-generates .stories.tsx and .mdx docs from components via ts-morph AST parsing, with prop controls, variant stories, action args, and default args. Keywords: Storybook, generate…
cache-components
Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). PROACTIVE ACTIVATION: Use this skill automatically when working in Next.js projects that have cacheComponents: true in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best…
frontend-code-review
Trigger when the user requests a review of frontend files (e.g., .tsx, .ts, .js). Support both pending-change reviews and focused file reviews while applying the checklist rules.
frontend-design
Create distinctive, production-grade frontend interfaces with high design quality. Use when the user asks to build landing pages, websites, dashboards, web components, or any frontend UI. Generates creative, polished code that avoids generic AI aesthetics.
docs-release-notes
Use when a change needs a user-visible release-note, changelog, or changeset entry — "add a release note", "add a changeset for this", "what goes in the changelog?", "write up what shipped", "note this for the next release" — or when finalizing a branch whose customer-visible features, bug fixes, or UI changes should…
docs-sync-internal
Use when code changes on the current branch need matching internal or developer documentation — "update our internal docs", "the architecture docs are stale after this change", "document what I just changed", "do the dev docs still match the code?" — or as a pre-push check that developer docs track the code. Narrower…