modify-dashboard

Modify variables, chart series, and chart types on existing Nightingale monitoring dashboards.

13.3k|1.8k|Updated Mar 3, 2020
One-click install
npx skills add https://github.com/ccfos/nightingale --skill modify-dashboard
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: modify-dashboard
Source: https://github.com/ccfos/nightingale/tree/main/aiagent/skill/embedded/builtin/modify-dashboard
Command: npx skills add https://github.com/ccfos/nightingale --skill modify-dashboard

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Editing an existing monitoring dashboard in Nightingale (n9e) normally requires navigating the UI and manually tweaking variables, PromQL queries, and panel settings. This Skill lets you make those changes through natural language, with a built-in proposal-and-confirmation flow so nothing is written to the database until you approve the diff.

Core Features & Use Cases

  • Variable Management: Change a template variable's definition, default value, label, or multi-select behavior, and add or delete variables.
  • Variable Health Check & Fix: Scan variable definitions and chart references to detect smells like undefined variable references or inconsistent datasource references, then fix them in one proposal.
  • Chart Series Editing: Modify PromQL queries, legends, units, titles, add or remove series, and change chart types (e.g., stat to timeseries) on Prometheus/VictoriaMetrics panels.
  • Use Case: You notice the CPU chart on a dashboard queries the wrong metric. Ask the assistant to change the query to only look at total cores; it reads the current dashboard, validates the new PromQL returns data, and shows you a change list for confirmation before persisting.

Quick Start

Ask the assistant to change the default value of the ident variable on this dashboard to web01.

Frequently Asked Questions about modify-dashboard

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I change a dashboard variable's default value in Nightingale?

Ask the assistant to change the variable's default value, providing the dashboard link or name. It reads the current variables with get_dashboard_detail, then submits an update_dashboard proposal containing only the changed variable fields for your confirmation.

How do I edit a PromQL query on an existing Nightingale chart?

Identify the chart by id or name and state the new query. The assistant merges the change incrementally by series ref, preserving other series and settings, and shows a change list for confirmation before saving.

Can I edit queries on MySQL or Elasticsearch panels in Nightingale?

No. Editing series queries is only supported for Prometheus/VictoriaMetrics panels. SQL and log panels (mysql, ck, es) can only have their unit, title, or description changed, or be deleted.

How do I fix a Nightingale dashboard variable that returns no data?

The variable health check in get_dashboard_detail reports smells like undefined variable references or inconsistent datasource references. The assistant decides a fix per item, optionally validates new definitions with query_prometheus, and bundles all fixes into one proposal.

Does changing a chart type in Nightingale keep my existing settings?

Changing type (timeseries, stat, gauge, barGauge, pie, table) resets the chart's type-style options to the new type's defaults. Switching to timeseries also clears the instant flag on series to restore range queries.

Why was my dashboard change not applied after proposing it?

update_dashboard is proposal-style: the change is only persisted after you confirm the diff shown by the system. If the dashboard was modified by someone else meanwhile, the proposal goes stale and must be regenerated from the current state.