agentleFS
ElasticKnown publisherelastic/integration-skills/skills/dashboard-guidelines/SKILL.md

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.

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
  1. Distinctive:

    Use this skill when tasks include:

    line 15
  2. Distinctive:

    Do not use this skill as the primary guide for:

    line 24
  3. Very specific:

    test suite selection outside dashboard-focused checks (integration-testing → references/system-testing.md)

    line 28
  4. Distinctive:

    Before creating or updating dashboard assets, verify:

    line 32
  5. Distinctive:

    Prefer Lens for new visualizations.

    line 41
  6. Distinctive:

    Keep panels in the dashboard itself (by value) unless shared-library behavior is intentionally required.

    line 42
  7. Distinctive:

    If you need to modify installed managed dashboards before exporting:

    line 50
  8. Distinctive:

    no stale field names after mapping changes

    line 59
  9. Distinctive:

    Run package validation commands before opening a PR:

    line 62
  10. Distinctive:

    Use naming conventions from dashboard creation guidance:

    line 70
  11. Distinctive:

    Use stable released Kibana versions (avoid SNAPSHOT).

    line 83
  12. Distinctive:

    Keep dashboards focused; split overloaded boards and provide navigation links.

    line 84
  13. Distinctive:

    Prefer by-value panels so dashboards remain self-contained.

    line 85
  14. Distinctive:

    Prefer Lens over TSVB for new visualizations.

    line 86
  15. Distinctive:

    Add controls using dashboard-native Controls (not deprecated input controls visualization).

    line 87
  16. Distinctive:

    Keep visual hierarchy clear:

    line 90
  17. Distinctive:

    Use concise, self-explanatory panel titles and consistent accessible colors.

    line 94
  18. Distinctive:

    After dashboard updates are in place, continue with:

    line 117

≈ “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.

Keep what fits and drop the rest. Your version, ready for your agents.
Files
SKILL.md

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.dataset filtering

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:

  1. you are in the correct package directory (packages/<package_name>/)
  2. Kibana/Elastic services are available for editing and exporting assets
  3. sample data exists and dashboards can be validated against realistic events/metrics
  4. package manifest.yml compatibility constraints (conditions.kibana.version) are understood

Workflow: create, export, validate

  1. 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.
  2. Export assets back into the package.
# from package root
elastic-package export
  1. If you need to modify installed managed dashboards before exporting:
elastic-package edit dashboards
elastic-package export dashboards
  1. Review exported files under kibana/:
    • file names match package spec
    • no stale field names after mapping changes
    • dashboard filters are scoped to integration datasets
  2. Run package validation commands before opening a PR:
elastic-package check

Naming 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
  • 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.dataset when applicable)
  • controls/drilldowns/navigation are coherent for multi-dashboard packages
  • exported dependencies are committed (dashboards plus required saved objects)
  • elastic-package check passes 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:

  1. dashboard-review for reviewing dashboard JSON changes in a PR or branch
  2. integration-testing → references/system-testing.md for system test validation
  3. elastic-package-cli for broader check/lint/test command selection
  4. package-spec when dashboard changes require a release note entry

References

  • references/kibana-assets-layout.md

Download now (ZIP)

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
What did you use it for? e.g. Reviewing pull requests in a Rails app

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.