Official agent skill

Fleet Management

by grafana in grafana/skills

Manage a fleet of Grafana Alloy collectors with Fleet Management — author Alloy pipelines once, target them via attribute matchers (env="production", regex region=~"us-."), push remotely via OpAMP…

OfficialApache-2.0Auto-check passedDevOps & Cloud

Install Fleet Management

skills CLI
$ npx skills add grafana/skills --skill fleet-management -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install grafana/skills fleet-management --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/grafana/skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/grafana-cloud/fleet-management .claude/skills/fleet-management && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
fleet-management
GitHub stars
281
Token cost
~1.3k tokens
SKILL.md length
147 words
Files
3 (incl. references)
Skills in repo
51
Repo updated
First seen
Licence
Apache-2.0

At a glance

Manage a fleet of Grafana Alloy collectors with Fleet Management — author Alloy pipelines once, target them via attribute matchers (env="production", regex region=~"us-."), push remotely via OpAMP…

  • Works in 3 steps: Author + validate + deploy a pipeline → Troubleshoot a… → Onboard a new Alloy with the bootstrap…
  • Standing up a Cloud Alloy fleet
  • SKILL.md covers Prerequisites, Concepts, Common Workflows and Resources
  • Calls jq, curl and kubectl; reaches prometheus-prod-01-eu-west-0.grafana.net and fleet-management-prod-us-east-0.grafana.net; needs GRAFANA_CLOUD_API_KEY and API_TOKEN

What it does

Fleet Management is an agent skill from grafana/skills, published by the product's own GitHub organization. Manage a fleet of Grafana Alloy collectors with Fleet Management — author Alloy pipelines once, target them via attribute matchers (env="production", regex region=~"us-."), push remotely via OpAMP without restarting collectors. Covers pipeline create / update / matcher RPCs, collector attribute API, remotecfg bootstrap block (standalone + Helm), pre-deploy alloy fmt validation, the local Alloy UI at port 12345 for component health, and post-deploy REMOTECONFIGSTATUSAPPLIED verification. Use when standing up a…

Its SKILL.md is about 1.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 3 other files, including reference files (for example `references/api.md` and `references/bootstrap.md`).

It sits in DevOps & Cloud, covering Monitoring and alerting and Container orchestration. It works with Grafana, Kubernetes and Prometheus. The licence is Apache-2.0.

When your agent uses it

  • Standing up a Cloud Alloy fleet
  • Pushing a config change to 200 collectors
  • Hunting why one collector shows REMOTECONFIGSTATUSFAILED
  • Validating River syntax before saving

Example prompts

  • “production”
  • “configure Alloy”
  • “remote config the collectors”
  • “/fleet-management”

Requirements

  • A credential in GRAFANA_CLOUD_API_KEY
  • A credential in API_TOKEN

Workflow steps

3 steps, taken from the step headings in SKILL.md.

  1. Author + validate + deploy a pipeline
  2. Troubleshoot a REMOTE_CONFIG_STATUS_FAILED collector
  3. Onboard a new Alloy with the bootstrap block

What it can do on your machine

Read from SKILL.md and the folder at commit 1ccacf2. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • jq
    • curl
    • kubectl

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Hosts in commands or code, which the agent is likely to contact:

    • prometheus-prod-01-eu-west-0.grafana.net
    • fleet-management-prod-us-east-0.grafana.net

    Also links to:

    • grafana.com
    • github.com

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names these keys or tokens, usually read from environment variables:

    • GRAFANA_CLOUD_API_KEY
    • API_TOKEN

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Fleet Management loads about 1.3k tokens when it runs, and up to ~3.3k if it reads all its reference files. Until then it costs about 242 tokens; SKILL.md has 147 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~242
When it runs · the whole SKILL.md, loaded when a task matches
~1.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~3.3k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from grafana/skills at commit 1ccacf2, republished under its Apache-2.0 licence (© grafana). 147 words, ~1,344 tokens.

Download SKILL.mdSave it as .claude/skills/fleet-management/SKILL.md (or your agent's skills folder). This skill also uses 2 other files; get the full folder from GitHub.
name
fleet-management
description
Manage a fleet of Grafana Alloy collectors with Fleet Management — author Alloy pipelines once, target them via attribute matchers (`env="production"`, regex `region=~"us-.*"`), push remotely via OpAMP without restarting collectors. Covers pipeline create / update / matcher RPCs, collector attribute API, `remotecfg` bootstrap block (standalone + Helm), pre-deploy `alloy fmt` validation, the local Alloy UI at port 12345 for component health, and post-deploy `REMOTE_CONFIG_STATUS_APPLIED` verification. Use when standing up a Cloud Alloy fleet, pushing a config change to 200 collectors, hunting why one collector shows `REMOTE_CONFIG_STATUS_FAILED`, validating River syntax before saving, or wiring `discovery.kubernetes` → `prometheus.remote_write` — even when the user says "configure Alloy", "remote config the collectors", "push pipeline", "OpAMP", "collector is unhealthy", or "manage agent config centrally" without naming Fleet Management.
license
Apache-2.0

Grafana Fleet Management + Alloy Configuration

Docs: https://grafana.com/docs/grafana-cloud/send-data/fleet-management/

Remote pipeline distribution to Alloy collectors via OpAMP — author once, target with matchers, hot-apply (no restart).

Prerequisites

  • Grafana Cloud stack with Fleet Management enabled
  • API token with Fleet Management access (Authorization: Bearer <STACK_ID>:<TOKEN>)
  • Alloy ≥ 1.0 installed on the targets (standalone or via grafana/alloy Helm chart)
  • alloy CLI locally for alloy fmt syntax validation

Concepts

  • Collector — Alloy instance with unique ID + attributes
  • Pipeline — named Alloy River config stored in Fleet Management
  • Matcher — selector mapping a pipeline to collectors by attribute
  • Attributes — key/value labels on a collector (env, team, region)

Common Workflows

1. Author + validate + deploy a pipeline
bash
# 1. Save the pipeline to a local file (lint catches typos before remote)
cat > pipeline.alloy <<'EOF'
prometheus.scrape "default" {
  targets    = []
  forward_to = [prometheus.remote_write.grafana_cloud.receiver]
  scrape_interval = "60s"
}

prometheus.remote_write "grafana_cloud" {
  endpoint {
    url = "https://prometheus-prod-01-eu-west-0.grafana.net/api/prom/push"
    basic_auth {
      username = "<METRICS_USERNAME>"
      password = env("GRAFANA_CLOUD_API_KEY")
    }
  }
}
EOF

# 2. Validate syntax LOCALLY before sending to Fleet Management
alloy fmt pipeline.alloy            # rewrites in place or errors with line number
alloy validate pipeline.alloy       # full semantic check (newer Alloy releases)

# 3. Create the pipeline via API (see references/api.md for the payload schema)
BASE=https://fleet-management-prod-us-east-0.grafana.net
TOKEN=<STACK_ID>:<API_TOKEN>
PAYLOAD=$(jq -n --rawfile c pipeline.alloy '{
  name:"k8s-metrics", contents:$c,
  matchers:[{name:"env",value:"production",type:"EQUAL"}]
}')
curl -s -X POST "$BASE/pipeline.v1.PipelineService/CreatePipeline" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" \
  -d "$PAYLOAD" | jq

# 4. Verify it rolled out — every targeted collector should report APPLIED within 1-2 polls
curl -s -X POST "$BASE/collector.v1.CollectorService/ListCollectors" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{}' \
  | jq '.collectors[] | select(.attributes[]?.value=="production")
        | {name, remoteConfigStatus}'
# Expect every row: remoteConfigStatus == "REMOTE_CONFIG_STATUS_APPLIED"
2. Troubleshoot a REMOTE_CONFIG_STATUS_FAILED collector
bash
# 1. Find failed collectors and surface the error message
curl -s -X POST "$BASE/collector.v1.CollectorService/ListCollectors" \
  -H "Authorization: Bearer $TOKEN" -H "Content-Type: application/json" -d '{}' \
  | jq '.collectors[] | select(.remoteConfigStatus=="REMOTE_CONFIG_STATUS_FAILED")
        | {name, msg:.remoteConfigStatusMessage}'

# 2. Re-validate the offending pipeline locally
alloy fmt pipeline.alloy

# 3. Inspect Alloy directly — UI at port 12345 shows per-component health
#    http://<COLLECTOR_HOST>:12345 → Graph / Components / Clustering tabs
kubectl -n monitoring logs -l app.kubernetes.io/name=alloy --tail=100 | grep -iE 'remote|error'

# 4. After fixing + re-pushing, re-list collectors and confirm the row flips to APPLIED.

Failure-message decoder table: references/api.md.

3. Onboard a new Alloy with the bootstrap block

The bootstrap remotecfg block is the only local config required:

alloy
remotecfg {
  url = "https://<FLEET_MANAGEMENT_HOST>"
  basic_auth { username = "<STACK_ID>"; password = env("GRAFANA_CLOUD_API_KEY") }
  poll_frequency = "1m"
  attributes = { "env" = env("ENVIRONMENT"), "team" = "platform" }
}
bash
# Verify after start
curl -s http://localhost:12345/api/v0/web/components \
  | jq '.[] | select(.id=="remotecfg") | {id, health:.health.state}'
# health.state == "healthy"

Full bootstrap (standalone + Helm) + Assistant tool list: references/bootstrap.md.

Resources

© grafana, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 2 other files (references) in skills/grafana-cloud/fleet-management of grafana/skills.

  • SKILL.md
  • references/api.md
  • references/bootstrap.md

Open the folder on GitHubat commit 1ccacf2

Compare with similar skills

Fleet Management next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Fleet Management compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Fleet Management this skillgrafana/skills281—~1.3kAutomated safety check: PassApache-2.0
Grafana Dashboardpando85/kaniop131—~987Automated safety check: PassAGPL-3.0
Signozqjoly/GitOps112—~6.1kAutomated safety check: PassWTFPL
Prometheus GrafanaBagelHole/DevOps-Security-Agent-Skills1.1k—~2.5kAutomated safety check: PassMIT
Qdrant Monitoring Setupqdrant/skills2542 repos~874Automated safety check: PassApache-2.0
Prometheus Grafanasickn33/agentic-awesome-skills47k1 repos~2.7kAutomated safety check: PassMIT

Similar skills

  • Grafana Dashboard

    pando85/kaniop

    Improve and validate the Kaniop Grafana dashboard against repository metrics and the grigri live cluster.

    131 GitHub stars~987 tokensUpdated today
    DevOps & CloudAuto-check passed
  • Signoz

    qjoly/GitOps

    Manage the self-hosted SigNoz observability stack in this GitOps repo.

    112 GitHub stars~6.1k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Prometheus Grafana

    BagelHole/DevOps-Security-Agent-Skills

    Set up metrics collection and visualization with Prometheus and Grafana.

    1.1k GitHub stars~2.5k tokensUpdated 4 mo ago
    DevOps & CloudAuto-check passed
  • Official

    Guides Qdrant monitoring setup including Prometheus scraping, health probes, Hybrid Cloud metrics, alerting, and log centralization.

    254 GitHub starsUsed in 2 repos~874 tokens
    DevOps & CloudAuto-check passed
  • Prometheus Grafana

    sickn33/agentic-awesome-skills

    Set up metrics collection and visualization with Prometheus and Grafana.

    47k GitHub starsUsed in 1 repo~2.7k tokens
    DevOps & CloudAuto-check passed
  • Cloud Infra Supply Chain

    zhaji2333/CkSKILLS

    当目标涉及云资产(对象存储/云元数据/Serverless)、容器/K8s、运维面板(宝塔/Grafana/Zabbix/Jenkins/GitLab/Nacos等)、消息队列/缓存中间件、CI/CD流水线、第三方回调集成、依赖组件CVE、信息泄露配置时调用。负责未授权访问、弱口令、云配置错误、供应链漏洞与敏感信息挖掘。

    114 GitHub stars~688 tokensUpdated 25 days ago
    DevOps & CloudAuto-check: warnings

More from grafana/skills

All 51 skills in this repo
  • K6 Docs

    grafana/skills

    Official

    Write or review k6 documentation across the three k6 repositories - k6-DefinitelyTyped (TypeScript types), k6-docs (user documentation), and k6 (release notes / changelog).

    281 GitHub stars~678 tokensUpdated yesterday
    Auto-check passed
  • Alerting Irm

    grafana/skills

    Official

    Configure Grafana Alerting, Incident Response Management (IRM), and SLOs end-to-end — provisions Grafana-managed and data-source-managed alert rules, contact points (Slack/PagerDuty/email/webhook)…

    281 GitHub starsUsed in 1 repo~1.9k tokens
    Auto-check passed
  • Dashboarding

    grafana/skills

    Official

    Build, modify, and ship Grafana dashboards as JSON via the HTTP API — panel types (timeseries / stat / gauge / table / heatmap / logs / traces / node-graph), gridPos 24-column layout, units…

    281 GitHub starsUsed in 1 repo~1.4k tokens
    Auto-check passed
  • K6 Perf Test Website

    grafana/skills

    Official

    A skill your agent uses when the user wants to performance-test, load-test, or stress-test a public website end-to-end with k6.

    281 GitHub stars~3.3k tokensUpdated yesterday
    Auto-check passed
  • Promql

    grafana/skills

    Official

    Write, validate, and optimize PromQL for Prometheus / Grafana Mimir / Grafana Cloud Metrics.

    281 GitHub starsUsed in 1 repo~1.1k tokens
    Auto-check passed
  • Adaptive Metrics

    grafana/skills

    Official

    Cut Grafana Cloud Metrics cost by shrinking active-series count with Adaptive Metrics aggregation rules — auto-recommendations from query history, custom exact/regex rules, label-drop config…

    281 GitHub stars~1.3k tokensUpdated yesterday
    Auto-check passed

Categories

Questions about Fleet Management

What does Fleet Management do?

Manage a fleet of Grafana Alloy collectors with Fleet Management — author Alloy pipelines once, target them via attribute matchers (env="production", regex region=~"us-."), push remotely via OpAMP…. Fleet Management is an agent skill from grafana/skills, published by the product's own GitHub organization."), push remotely via OpAMP without restarting collectors.

When should I use Fleet Management?

Fleet Management fits situations like: standing up a Cloud Alloy fleet; pushing a config change to 200 collectors; hunting why one collector shows REMOTECONFIGSTATUSFAILED; validating River syntax before saving.

How do I install Fleet Management in Claude Code?

Run `npx skills add grafana/skills --skill fleet-management -a claude-code`. Or copy the skill folder (skills/grafana-cloud/fleet-management in grafana/skills) into .claude/skills/fleet-management in your project. Claude Code loads it when a task matches its description.

How do I install Fleet Management in Codex?

Run `npx skills add grafana/skills --skill fleet-management -a codex`. Or copy the skill folder (skills/grafana-cloud/fleet-management in grafana/skills) into .agents/skills/fleet-management in your project. Codex loads it when a task matches its description.

Can I use Fleet Management in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add grafana/skills --skill fleet-management -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/fleet-management, .gemini/skills/fleet-management, .github/skills/fleet-management and .opencode/skills/fleet-management in your project.

What does Fleet Management need to run?

Going by SKILL.md and its folder, Fleet Management needs the command-line tools its instructions call (jq, curl and kubectl) and credentials named GRAFANA_CLOUD_API_KEY and API_TOKEN. Our summary lists: A credential in GRAFANA_CLOUD_API_KEY; A credential in API_TOKEN.

Does Fleet Management access the network?

SKILL.md names 4 domains. In commands or code: prometheus-prod-01-eu-west-0.grafana.net and fleet-management-prod-us-east-0.grafana.net; the agent is likely to contact these when it follows the instructions. As links in the text: grafana.com and github.com. This is read from the text; nothing was executed.

Is Fleet Management safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Fleet Management use?

Fleet Management is published under the Apache-2.0 licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Fleet Management use?

About 1.3k tokens (SKILL.md is roughly 5.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 1.9k tokens, read only when the agent opens those files.

What are the alternatives to Fleet Management?

Skills that share tags, products or a category with Fleet Management: Grafana Dashboard (pando85/kaniop, 131 stars), Signoz (qjoly/GitOps, 112 stars), Prometheus Grafana (BagelHole/DevOps-Security-Agent-Skills, 1.1k stars) and Qdrant Monitoring Setup (qdrant/skills, 254 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Fleet Management?

grafana (a GitHub organization, an official publisher) maintains it in grafana/skills, which has 281 GitHub stars. The repository holds 51 skills in this directory. The repository was last updated on October 8, 2026.

Source: grafana/skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.