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 StefanTheCode/dotnet-ai-toolkit --skill metrics-dashboard-generatorgit clone --depth 1 https://github.com/StefanTheCode/dotnet-ai-toolkitWrote 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/stefanthecode/dotnet-ai-toolkit/metrics-dashboard-generator)<a href="https://agentmods.dev/skills/stefanthecode/dotnet-ai-toolkit/metrics-dashboard-generator"><img src="https://agentmods.dev/badge/skills/stefanthecode/dotnet-ai-toolkit/metrics-dashboard-generator/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/stefanthecode/dotnet-ai-toolkit/metrics-dashboard-generator"><img src="https://agentmods.dev/badge/skills/stefanthecode/dotnet-ai-toolkit/metrics-dashboard-generator.svg" alt="Reviewed on agentmods" width="80" 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.00637 |
| Opus 5.5 | $0.00041 | $0.00255 |
| Sonnet 5.5 | $0.00021 | $0.00127 |
| Haiku 4.5 | $0.00010 | $0.00064 |
Grade A, and why
metrics-dashboard-generator 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 2mo 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 — 42 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Metrics Dashboard Generator
Produce ready-to-import Prometheus scrape config and a Grafana dashboard JSON for a .NET service — built around the RED method (Rate, Errors, Duration) plus runtime health and your custom meters.
Input — point it at your project
Works on a target: a project or GitHub URL. Find which metrics exist: grep -rn "AddPrometheusExporter\|MapPrometheusScrapingEndpoint\|Meter(\|CreateCounter\|CreateHistogram\|AddOpenTelemetry" --include=*.cs <target>. Note custom meter/instrument names to add panels for them.
Prometheus scrape
scrape_configs:
- job_name: 'orders-service'
metrics_path: /metrics
static_configs:
- targets: ['orders-service:8080']
Service side: OpenTelemetry ... .WithMetrics(m => m.AddPrometheusExporter()) + app.MapPrometheusScrapingEndpoint();.
Grafana dashboard (panels generated)
- Rate — requests/sec:
rate(http_server_request_duration_seconds_count[1m])by route. - Errors — 5xx ratio:
sum(rate(...{http_response_status_code=~"5.."}[5m])) / sum(rate(...[5m])). - Duration — p50/p95/p99:
histogram_quantile(0.95, sum(rate(http_server_request_duration_seconds_bucket[5m])) by (le, route)). - Runtime — GC collections, heap size, thread pool queue, working set (from
AddRuntimeInstrumentation). - Custom meters — a panel per custom counter/histogram you detected.
Output is a complete dashboard .json to import into Grafana, plus the scrape snippet.
Principles
- RED for request services, USE for resources — start there before vanity panels.
- Use histogram quantiles for latency, not averages (averages hide tail latency).
- Label by route/status, but watch cardinality — don't label by user id or raw path.
- Match metric names to the OTel/Prometheus conventions your exporter emits (verify the names).
How to use it & best prompts
"Generate a Grafana dashboard for my service", "Prometheus config + RED panels", "dashboard my custom order metrics", "p95 latency panel by route". Pairs with opentelemetry-setup.
What ships with it
1 file 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.
- 2mo ago First seen · 42 lines · 103 tokens per session scan A e4d603ec17d9
metrics-dashboard-generator is a skill published in the GitHub repository StefanTheCode/dotnet-ai-toolkit (26 stars, last pushed 2mo ago), licensed MIT. It adds 103 tokens to every session and 637 once invoked, about $0.0004 per session on Opus 5.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.
metrics-dashboard-generator compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| metrics-dashboard-generatorStefanTheCode/dotnet-ai-toolkit | Skill | 26 | 2mo ago | MIT | A | 103 | Claude Code |
| agenttrace-session-auditsickn33/agentic-awesome-skills | Skill | 49k | yesterday | MIT | A | 34 | Claude Code |
| fixing-github-security-alertsTracer-Cloud/opensre | Skill | 13k | yesterday | Apache-2.0 | A | 30 | Claude Code, Codex |
| onboarding-github-ciTracer-Cloud/opensre | Skill | 13k | yesterday | Apache-2.0 | A | 46 | Claude Code, Codex |
| operating-github-ci-fixerTracer-Cloud/opensre | Skill | 13k | yesterday | Apache-2.0 | A | 48 | Claude Code, Codex |
| operating-github-security-fixerTracer-Cloud/opensre | Skill | 13k | yesterday | Apache-2.0 | A | 66 | Claude Code, Codex |
| measuring-github-star-velocityTracer-Cloud/opensre | Skill | 13k | yesterday | Apache-2.0 | A | 26 | Claude Code, Codex |