# Send Grafana to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "grafana",
    "name": "Grafana",
    "source": "tencent",
    "type": "skill",
    "category": "数据分析",
    "sourceUrl": "https://clawhub.ai/ivangdavila/grafana",
    "canonicalUrl": "https://clawhub.ai/ivangdavila/grafana",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/grafana",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=grafana",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-04-23T16:43:11.935Z",
      "expiresAt": "2026-04-30T16:43:11.935Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=4claw-imageboard",
        "contentDisposition": "attachment; filename=\"4claw-imageboard-1.0.1.zip\"",
        "redirectLocation": null,
        "bodySnippet": null
      },
      "scope": "source",
      "summary": "Source download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this source.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/grafana"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/grafana",
    "downloadUrl": "https://openagent3.xyz/downloads/grafana",
    "agentUrl": "https://openagent3.xyz/skills/grafana/agent",
    "manifestUrl": "https://openagent3.xyz/skills/grafana/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/grafana/agent.md"
  }
}
```
## Documentation

### Variables and Templating

Multi-value variable needs $__all in regex — or only first value used
${var:csv} for comma-separated — ${var:pipe} for pipe-separated in regex
Variable in query: $var or ${var} — different escaping per data source
$__interval auto-adjusts to time range — use for aggregation window
Chained variables: child depends on parent — set "Refresh" to "On time range change"

### Prometheus Queries

rate() needs range vector — rate(requests_total[5m]) not rate(requests_total)
rate() for counters, deriv() for gauges — rate handles counter resets
$__rate_interval over hardcoded — adapts to scrape interval and dashboard range
Labels in legend: {{label}} — multiple: {{instance}} - {{job}}
Regex filter: metric{label=~"val1|val2"} — !~ for negative match

### Panel Configuration

"No data" vs "null" are different — configure in display options
Thresholds work on last value — not all values in range
Min/max must match your data range — auto-scaling can hide anomalies
Time series for trends, stat for current value — choose visualization wisely

### Alerting

Alert evaluates on server — not browser, query must work without variables
Variables not supported in alerts — hardcode values or use templates
Multiple conditions: AND is default — configure for OR if needed
Alert state "Pending" before "Firing" — for duration, prevents flapping
Notification channel must be configured — alert without channel = no notification

### Dashboard Provisioning

JSON export includes data source UID — will fail if different on import
Use data source variables — ${DS_PROMETHEUS} substituted at runtime
Provisioned dashboards read-only by default — allowEditing: true in provisioning
Folder must exist before dashboard provisioning — or import fails silently

### Data Sources

"Server" mode proxies through Grafana — hides credentials from browser
"Browser" mode direct from browser — faster but exposes URL/auth
Test connection catches most issues — but not query-specific problems
TLS skip verify for self-signed — but fix proper certs for production

### Transformations

Order matters — transformations apply in sequence
Outer join for combining queries — match on time or label
Reduce for aggregating time series — last, mean, max, etc.
Add field from calculation — combine metrics client-side

### Common Mistakes

Time range selector affects variable queries — unexpected results with "All time"
Dashboard saved but datasource not — works locally, breaks on import
Alert rule in dashboard vs Grafana alerting — different systems, don't mix
Panel queries run on every refresh — high-cardinality queries slow dashboard
Annotation queries add DB load — use sparingly on busy dashboards
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: ivangdavila
- Version: 1.0.0
## Source health
- Status: healthy
- Source download looks usable.
- Yavira can redirect you to the upstream package for this source.
- Health scope: source
- Reason: direct_download_ok
- Checked at: 2026-04-23T16:43:11.935Z
- Expires at: 2026-04-30T16:43:11.935Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/grafana)
- [Send to Agent page](https://openagent3.xyz/skills/grafana/agent)
- [JSON manifest](https://openagent3.xyz/skills/grafana/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/grafana/agent.md)
- [Download page](https://openagent3.xyz/downloads/grafana)