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 agentmods add skills/varnan-tech/opendirectory/graphic-chartnpx skills add Varnan-Tech/opendirectory --skill graphic-chartgit clone --depth 1 https://github.com/Varnan-Tech/opendirectoryWrote 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/varnan-tech/opendirectory/graphic-chart)<a href="https://agentmods.dev/skills/varnan-tech/opendirectory/graphic-chart"><img src="https://agentmods.dev/badge/skills/varnan-tech/opendirectory/graphic-chart.svg" alt="Measured on agentmods" height="20"></a>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.00103 | $0.03376 |
| Opus 5 | $0.00051 | $0.01688 |
| Sonnet 5 | $0.00021 | $0.00675 |
| Haiku 4.5 | $0.00010 | $0.00338 |
Grade A, and why
graphic-chart 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 6d 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.
How it starts
The opening of the file, as written. The whole thing — 319 lines — stays where its author put it; the contents beside it link to each section on GitHub.
graphic-chart
Generates data visualization charts as PNG. Renders HTML with Apache ECharts v6 in headless Chromium via Playwright → screenshots at 2× retina quality.
CDN: https://cdn.jsdelivr.net/npm/[email protected]/dist/echarts.min.js
Critical Rules (read before every generation)
areatype →type: 'line'+areaStyle: {}— ECharts has notype: 'area'.doughnut→type: 'pie'+radius: ['40%', '70%']— ECharts has notype: 'doughnut'.- Readiness signal: register
chart.on('finished', fn)BEFOREchart.setOption()— ECharts bug #14101/#17500: if listener is registered after setOption, it silently never fires. Always register bothfinishedandrenderedevents before setOption. xAxis.type: 'category'must be explicit — ECharts does not infer it from the data. Forgetting this produces a blank chart.- Category labels go in
xAxis.data, not in adata.labelsarray. ECharts structure is flat:{ xAxis, yAxis, series, grid, title, legend }— not nested underdataoroptions. - Data labels are fully built-in — use
label: { show: true }on any series. No plugin needed. - Highlight a specific bar/point via per-item
itemStyle— put{ value: N, itemStyle: { color: '#...' } }directly in thedataarray. Do NOT use Chart.js-stylebackgroundColorarrays. - ECharts init uses a
<div>container, not<canvas>—echarts.init(document.getElementById('chart')). The container div needs explicit dimensions. animation: falsein option — disables animation for instant render. Still registerfinished+renderedevents before setOption for the readiness signal.- Never dump HTML in chat. Save to file, show summary only.
- Title states the insight, not the subject. "Revenue grew 3× in 12 months" not "Monthly Revenue".
- Pie/doughnut: use body
padding: 64px 80pxand.chart-container { max-height: 860px }— prevents edge-to-edge fill when no title.
Step 1: Intake
What ships with it
6 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.
- 6d ago First seen · 319 lines · 103 tokens per session scan A 2ccbf5a33b69
graphic-chart is a skill published in the GitHub repository Varnan-Tech/opendirectory (635 stars, last pushed 20d ago), licensed MIT. It adds 103 tokens to every session and 3,376 once invoked, about $0.0005 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
hermes-plugin-development
Use when: creating, debugging, or integrating Hermes Agent plugins, including Python backend plugins (tools, hooks, routers, middleware) and JavaScript Hermes Desktop runtime plugins.
content-style
Writing Reddit-native content that sounds human, avoids AI tells, and delivers value through structure and specificity. Applies to workshop posts, definitive model guides, research megathreads, and community FYI/update posts.
coding-worktree-recovery
Use this skill when coding-agent work is interrupted, an agent exits without a clean commit, multiple controllers target the same checkout, or the checkout produces inconsistent file/Git behavior.
macos-storage-management
Safely reclaim local Mac storage without mistaking cloud placeholders for resident data, losing File Provider content, or flattening metadata onto an incompatible external filesystem.
hermes-mnemosyne
Mnemosyne is Hermes' primary local-first memory engine — SQLite with vector + FTS5 hybrid search, 19+ tools, auto-consolidation, and a standalone CLI. It's a pip-installed plugin (not a built-in toolset) discovered via $HERMESHOME/plugins/mnemosyne/.
skill-auditor
Audit any Hermes skill file and assign a quality grade based on clarity, completeness, tool guidance, and shareability. Returns specific fix suggestions ranked by impact.