dashboard-guidelines
Skill16 starsChanged 3 months agoApache-2.0View on GitHub
Use when creating or reviewing Kibana assets in packages, including dashboard export structure, naming, and data stream alignment.
In this repository14 other files it gives its agents.
- anonymize-logsSkill
- cel-programsSkill
- create-integrationSkill
- dashboard-reviewSkill
- ecs-field-mappingsSkill
- elastic-package-cliSkill
- entity-mappingsSkill
- ingest-pipelinesSkill
- input-configurationsSkill
- integration-testingSkill
- maintain-integrationSkill
- package-specSkill
- research-integrationSkill
- review-integrationSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
18 rules. About 0 are common, 17 are distinctive, and 1 is very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈17
Distinctive · estimate
This author's own choices. Worth a look.
1
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 15
Use this skill when tasks include:
- Distinctive: line 24
Do not use this skill as the primary guide for:
- Very specific: line 28
test suite selection outside dashboard-focused checks (integration-testing → references/system-testing.md)
- Distinctive: line 32
Before creating or updating dashboard assets, verify:
- Distinctive: line 41
Prefer Lens for new visualizations.
- Distinctive: line 42
Keep panels in the dashboard itself (by value) unless shared-library behavior is intentionally required.
- Distinctive: line 50
If you need to modify installed managed dashboards before exporting:
- Distinctive: line 59
no stale field names after mapping changes
- Distinctive: line 62
Run package validation commands before opening a PR:
- Distinctive: line 70
Use naming conventions from dashboard creation guidance:
- Distinctive: line 83
Use stable released Kibana versions (avoid SNAPSHOT).
- Distinctive: line 84
Keep dashboards focused; split overloaded boards and provide navigation links.
- Distinctive: line 85
Prefer by-value panels so dashboards remain self-contained.
- Distinctive: line 86
Prefer Lens over TSVB for new visualizations.
- Distinctive: line 87
Add controls using dashboard-native Controls (not deprecated input controls visualization).
- Distinctive: line 90
Keep visual hierarchy clear:
- Distinctive: line 94
Use concise, self-explanatory panel titles and consistent accessible colors.
- Distinctive: line 117
After dashboard updates are in place, continue with:
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
dashboard-guidelines
When to use
Use this skill when tasks include:
- creating new Kibana dashboards for an integration package
- reviewing dashboard JSON changes in
kibana/folders - exporting dashboard updates from Kibana into package source
- verifying dashboard naming and file layout against package spec
- checking dashboard/data stream alignment through
data_stream.datasetfiltering
When not to use
Do not use this skill as the primary guide for:
- package and data stream directory scaffolding (
create-integration,package-structure) - ingest pipeline parsing and normalization logic (
ingest-pipelines) - package-wide command orchestration and stack lifecycle decisions (
elastic-package-cli) - test suite selection outside dashboard-focused checks (
integration-testing→references/system-testing.md)
Preconditions
Before creating or updating dashboard assets, verify:
- you are in the correct package directory (
packages/<package_name>/) - Kibana/Elastic services are available for editing and exporting assets
- sample data exists and dashboards can be validated against realistic events/metrics
- package
manifest.ymlcompatibility constraints (conditions.kibana.version) are understood
Workflow: create, export, validate
- Build or update dashboards in Kibana.
- Prefer Lens for new visualizations.
- Keep panels in the dashboard itself (by value) unless shared-library behavior is intentionally required.
- Export assets back into the package.
# from package root
elastic-package export- If you need to modify installed managed dashboards before exporting:
elastic-package edit dashboards
elastic-package export dashboards- Review exported files under
kibana/:- file names match package spec
- no stale field names after mapping changes
- dashboard filters are scoped to integration datasets
- Run package validation commands before opening a PR:
elastic-package checkNaming conventions
Use naming conventions from dashboard creation guidance:
- Visualization title:
<Name>(avoid repeating package name in each panel title)
- Dashboard title:
[<Metrics | Logs> <PACKAGE NAME>] <Name>- examples:
[Metrics System] Host overview,[Logs Nginx] Access overview
- Dashboard asset file:
{PACKAGE_NAME}-{identifier}.json- example:
nginx-046212a0-a2a1-11e7-928f-5dbe6f6f5519.json
Design and modeling best practices
- Use stable released Kibana versions (avoid SNAPSHOT).
- Keep dashboards focused; split overloaded boards and provide navigation links.
- Prefer by-value panels so dashboards remain self-contained.
- Prefer Lens over TSVB for new visualizations.
- Add controls using dashboard-native Controls (not deprecated input controls visualization).
- Include dataset-aware filtering to prevent broad
logs-*/metrics-*queries where possible.- baseline recommendation: filter by
data_stream.dataset
- baseline recommendation: filter by
- Keep visual hierarchy clear:
- most important summary panels near the top
- related charts grouped together
- margins enabled for readability
- Use concise, self-explanatory panel titles and consistent accessible colors.
Quality checklist before PR
- dashboard assets are in
kibana/dashboard/and follow expected naming pattern - dashboard content reflects current field names and types
- visualizations are embedded by value unless there is a documented exception
- dashboard or panel queries include integration-relevant filters (
data_stream.datasetwhen applicable) - controls/drilldowns/navigation are coherent for multi-dashboard packages
- exported dependencies are committed (dashboards plus required saved objects)
elastic-package checkpasses for the package
Common pitfalls
- exporting from an unstable Kibana build and committing incompatible saved object data
- using generic, unfiltered
logs-*/metrics-*queries that cause noisy or slow panels - keeping stale field references after pipeline/field mapping changes
- overloading one dashboard instead of splitting into overview and deep-dive views
- relying on library visualizations unintentionally, causing hidden dependencies
- inconsistent naming between dashboard title, file name, and package context
Handoff to other skills
After dashboard updates are in place, continue with:
dashboard-reviewfor reviewing dashboard JSON changes in a PR or branchintegration-testing→references/system-testing.mdfor system test validationelastic-package-clifor broader check/lint/test command selectionpackage-specwhen dashboard changes require a release note entry
References
references/kibana-assets-layout.md
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

