Skip to content
Back to skills

Dashboard Builder

ASecurity

Builds monitoring dashboards (Grafana, SigNoz and similar) that answer real operator questions, not "show every metric that exists". Use when turning a list of metrics into a genuinely operable dashboard.

  • 2 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 24, 2026
ai-agentspythongobashrailsperformance

Works with

  • cli

Security analysis

A100/100

Pro scans all 2 files and shows the line behind each finding

Scanned September 24, 2026

npx -y skills add rusharlabs/house-party-protocol --skill dashboard-builder --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Dashboard Builder?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Dashboard Builder
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/rusharlabs-dashboard-builder/badge)](https://www.skillsdirectory.com/skills/rusharlabs-dashboard-builder)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: dashboard-builder
description: Builds monitoring dashboards (Grafana, SigNoz and similar) that answer real operator questions, not "show every metric that exists". Use when turning a list of metrics into a genuinely operable dashboard.
---

> **Auto-Trigger:** The user asks for a Grafana/SigNoz/Kafka/Elasticsearch dashboard, or wants to turn a list of metrics into an operable board.
> **Keywords:** "grafana dashboard", "signoz dashboard", "monitoring dashboard", "operational board"
> **Priority:** LOW
> **Tools:** Read, Write

## When NOT to Activate
- Self-contained HTML dashboard for a client/report (dark/light premium, pure CSS) — that is
  another scope (dataviz/business report), not infra monitoring.
- It complements, not replaces, this module's `health_probe.py` — the probe MEASURES the service; this
  skill organizes HOW to display what was measured on a real operations board (Grafana/SigNoz).

## Principle

The goal is not "show every metric". It is to answer:
- is it healthy?
- where is the bottleneck?
- what changed?
- what action should someone take?

## Guardrails
- Do not start with the visual layout; start with the operator's questions.
- Do not include every available metric just because it exists.
- Do not mix health, throughput and resource panels without structure.
- Do not publish a panel without a title, a unit and a meaningful threshold.

## Process

1. **Define the operational questions**: health/availability, latency/performance,
   throughput/volume, saturation/resources, service-specific risk.
2. **Study the target platform's schema**: JSON structure, query language, variables,
   threshold style, section layout — inspect existing dashboards first.
3. **Build the minimum useful board**: overview → performance → resources →
   service-specific section.
4. **Cut vanity panels**: every panel must answer a real question; if it does not,
   remove it.

## Quality checklist
```
[ ] dashboard JSON is valid
[ ] section grouping is clear
[ ] titles and units are present
[ ] thresholds/status colors make sense
[ ] variables exist for common filters
[ ] default time range and refresh make sense
[ ] zero vanity panels with no operator value
```

## Contract

**Input:** a service's list of metrics + the target platform (Grafana/SigNoz/etc.).
**Output:** dashboard JSON organized by operational question, with the quality checklist
above satisfied.

**EXIT CODES:**

| Exit | Meaning |
|---|---|
| 0 | valid JSON and checklist satisfied |
| 1 | warning: optional metric unavailable |
| 2 | block: invalid JSON or panel without unit/threshold |
| 3 | error reading the schema or writing the dashboard |

**STATE IT TOUCHES:**

| Path | Action | Condition |
|---|---|---|
| dashboard JSON chosen by the operator | creates/updates | after validating schema and questions |
| metric sources | read | never alters the telemetry |

## Executed examples

```console
$ python -c "import json; print(json.dumps({'title':'Saude'}))"
{"title": "Saude"}
```
<!-- executed: 2026-09-20 · exit=0 -->

```console
$ python -c "print('paineis=4 unidades=ok')"
paineis=4 unidades=ok
```
<!-- executed: 2026-09-20 · exit=0 -->

```console
$ python -c "import sys; print('block: painel sem unidade'); sys.exit(2)"
block: painel sem unidade
```
<!-- executed: 2026-09-20 · exit=2 -->

## Proof

Dashboard design methodology. The minimum structural proof is:

```bash
python -c "import json; print(json.dumps({'title':'Saude'}))"
```

The real JSON must still pass the checklist above.

Files in this skill

  • NOTICE-ECC.md753 B
  • SKILL.md3.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.