dashboard-review

dashboard-review is a skill for Claude Code from elastic/integration-skills. It costs 34 tokens per session (1,145 once invoked), scanned A, original, Apache-2.0.

A review workflow for Kibana dashboard JSON changes in a pull request or branch. Kibana is a tool for building dashboards from data, and JSON is the text format used to store these dashboard definitions.

In plain words
What is it for?
Use it to find changed dashboard files, extract readable before-and-after descriptions, summarize modifications, and review guideline compliance.
Why use it?
It compares the old and new dashboard definitions and checks them against the project's dashboard guidelines, including possible extraction or consistency warnings.

Skill for Claude Code ✓ vendor

Written for Claude Code: shipped in a Claude Code plugin.

Part of the integration-skills plugin — 15 skills shipped together

not rated 15repo yesterday A scan Socket: warnSnyk: warnSkillSpector: pass 34 tokens original Apache-2.0

Good fit Use it to find changed dashboard files, extract readable before-and-after descriptions, summarize modifications, and review guideline compliance.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/elastic/integration-skills/dashboard-review
About the project

Integration Skills is a collection of agent workflows for researching, creating, reviewing, and maintaining Elastic integration packages. Engineers use it with coding environments such as Cursor, Claude Code, and Codex to scaffold integrations, configure data streams, map fields, and run tests.

elastic/integration-skills · 15 stars · on GitHub

Install

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.

Any agent
npx skills add elastic/integration-skills --skill dashboard-review
Clone the repo
git clone --depth 1 https://github.com/elastic/integration-skills

Made for: Claude Code.

Or install integration-skills, the plugin that ships this one along with the rest of its 15 skills.

Wrote 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.

agentmods badge for dashboard-review

README.md
[![agentmods](https://agentmods.dev/badge/skills/elastic/integration-skills/dashboard-review/github.svg)](https://agentmods.dev/skills/elastic/integration-skills/dashboard-review)
Your own site
<a href="https://agentmods.dev/skills/elastic/integration-skills/dashboard-review"><img src="https://agentmods.dev/badge/skills/elastic/integration-skills/dashboard-review/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.

agentmods 80×15 button for dashboard-review

Your own site · 80×15
<a href="https://agentmods.dev/skills/elastic/integration-skills/dashboard-review"><img src="https://agentmods.dev/badge/skills/elastic/integration-skills/dashboard-review.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 34 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,145 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • Socket warn 20 May 2026
  • Snyk warn 20 May 2026
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00034 $0.01145
Opus 5 $0.00017 $0.00573
Sonnet 5 $0.00007 $0.00229
Haiku 4.5 $0.00003 $0.00114

Measured 9d ago against content hash c5b240235156, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

dashboard-review 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 9d 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.

skills/dashboard-review/SKILL.md · 119 lines

How it starts

The opening of the file, as written. The whole thing — 119 lines — stays where its author put it; the contents beside it link to each section on GitHub.

dashboard-review

When to use

Use this skill when tasks include:

  • reviewing a PR that modifies Kibana dashboard JSON files
  • comparing dashboard changes between branches
  • summarizing what changed in dashboard exports
  • checking dashboard changes against the official dashboard guidelines

When not to use

Do not use this skill as the primary guide for:

  • creating new dashboards or exporting them from Kibana (dashboard-guidelines)
  • dashboard naming conventions and file layout (dashboard-guidelinesreferences/kibana-assets-layout.md)
  • package-wide command orchestration (elastic-package-cli)
  • test suite selection (integration-testing)

Prerequisites

kbdash must be installed:

go install github.com/efd6/kbdash@latest

Lines prefixed with [!] in the output are warnings about potential issues in the dashboard JSON (consistency mismatches, incomplete extraction, parse errors). Run kbdash -h for a description of each warning type.

Review procedure

Read references/review-procedure.md for the full step-by-step workflow. The high-level flow is:

  1. Identify changed dashboard files (added, removed, modified).
  2. Extract before/after descriptions with kbdash.
  3. Compare descriptions and classify changes as meaningful or cosmetic.
  4. Verify suspected issues against the raw JSON before reporting.
  5. Format output as one section per dashboard with bullet-pointed changes.
  6. Check guideline compliance on added or modified dashboards.

Guideline compliance checks

After summarizing changes, check the final state of every added or modified dashboard against the official dashboard guidelines. Report violations in a "Guideline notes" subsection after the change summary for each dashboard.

Check for these issues:

  • TSVB panels: Flag any visualization panel using TSVB. The guidelines require Lens for all new visualizations. Migrating existing TSVB to Lens is encouraged.
  • Missing dataset filter: Each visualization should filter on data_stream.dataset or an equivalently specific scope. Flag panels that query broad index patterns (metrics-*, logs-*) without scoping.
  • By-reference visualizations: Visualization and lens panels should be embedded by value. In the raw JSON, references entries with a panelRefName indicate by-reference panels. Flag these only when the reference type is visualization, lens, or map. Saved searches (search type) are inherently referenced and should not be flagged.
  • Deprecated input controls: The input-control-vis type is deprecated. Dashboard-native controls should be used instead.
  • Package-name title prefix: Panel titles matching [<Package Name> ...] create unnecessary repetition. Flag these.
  • Broad wildcard filters: Filters using unscoped -* patterns without further qualification are a performance concern.
  • High panel count: If a dashboard has more than roughly 20 panels, note it. The guidelines recommend splitting across dashboards and linking with drilldowns.
  • Queries on event.dataset instead of data_stream.dataset: Saved-object queries (dashboards, saved searches, packaged ML job datafeeds) must filter on data_stream.dataset. Some inputs (e.g. packetbeat) never set event.dataset, so an event.dataset filter silently matches nothing. Flag every saved-object query in a diff that renames or re-maps fields.
  • YAML dashboard sources out of sync: When a package keeps YAML dashboard sources in _dev/shared/kibana/*.yaml (compiled to kibana/dashboard/*.json with kb-dashboard), BOTH must be committed and in sync. Flag JSON-only edits when a YAML source exists for that dashboard.
  • Regeneration diffs: A recompile PR is expected to change only state.adHocDataViews, state.internalReferences, and per-layer index keys (the ES|QL/Discover fix on Kibana 9.3+). Diffs beyond those keys in a "regenerate" PR deserve inspection.
  • Missing Kibana asset tags: New content-pack dashboards are expected to carry Kibana asset tags — note their absence (LOW).

Read the full file on GitHub · 119 lines

Files

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.

Changes

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.

  1. 9d ago First seen · 119 lines · 34 tokens per session scan A c5b240235156

Subscribe to this mod's changes

dashboard-review is a skill published in the GitHub repository elastic/integration-skills (15 stars, last pushed yesterday), licensed Apache-2.0. It adds 34 tokens to every session and 1,145 once invoked, about $0.0002 per session on Opus 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-31.