Use Home Assistant Dashboard Designer safely
The Home Assistant Dashboard Designer brings Lovelace dashboards into a consistent, maintainable YAML system through strict layout and card rules.
- Skill Road
- Use Home Assistant Dashboard Designer safely
Published on 09.09.2026
What the Home Assistant Dashboard Designer is and why it matters
The Home Assistant Dashboard Designer is a skill from the repository Home-Assistant-Codex-Skills maintained by GitHub user CCOSTAN, which, despite the repository's name, is explicitly documented for Claude-compatible assistants and was built specifically for designing dashboards in the open-source smart home platform Home Assistant. Home Assistant renders its interfaces through a system called Lovelace, in which dashboards are described as YAML files, with individual sections organized into what are called views, and each view built from nested cards. According to its own description, the skill helps design, update, and refactor such dashboards as a consistent system, with predictable structure, reusable templates, and as little stylistic drift between individual cards as possible. For users managing their own smart home with many sensors, infrastructure components, or energy monitoring, the skill addresses a well-known pain point: without clear conventions, Lovelace configurations tend to grow into an unwieldy patchwork of individually styled cards that are hard to maintain and that introduce fresh inconsistencies with every extension.
Prerequisites
Anyone wanting to use the skill first needs a running Home Assistant installation with YAML-based dashboard configuration in the config/dashboards directory, plus the custom Lovelace cards the skill assumes, in particular custom:button-card as the primary structural element, card-mod for shared styling adjustments, and optionally custom:flex-horseshoe-card and custom:mini-graph-card for rendering individual metrics. These additional cards are not part of the Home Assistant core and are typically installed through the community store HACS. For reliable operation, the skill also recommends using a Home Assistant MCP server, through which entity and service IDs can be validated live against the actual installation to avoid typos such as sensor.foo_bar instead of sensor.foobar. Optionally, a Stitch MCP server can also be connected, which according to the skill's description serves purely for visual ideation and must never be adopted directly as implementation code.
Step-by-step setup
The workflow described in the skill begins by reading the existing repository conventions and version control state, for instance whether changes are applied directly, through a branch, or through a multi-stage staged-promotion process. Next comes determining the intent behind the request, where the skill distinguishes between four dashboard types, infra, home, energy, and environment, and allows only one such intent per view. Before making any substantive change, the skill requires validating every referenced entity and service, preferably through the mentioned Home Assistant MCP server, and recording that validation step in work notes before any YAML is written at all. A layout draft is then created using the allowed container types grid and vertical-stack, with the skill imposing a maximum nesting depth of two levels and explicitly excluding horizontal-stack inside grid cells. Implementation follows a clear priority order: the four tier-1 cards, button-card, card-mod, flex-horseshoe-card, and mini-graph-card, should be used first, while tier-2 cards such as entities, markdown, or iframe are only permitted as a justified fallback, accompanied by an explanatory YAML comment right next to the card. Finally, the skill requires a multi-stage validation, starting with project-specific validation scripts, moving through native Home Assistant configuration checking, and ending with its own bundled validation script for individual view files.
Security and best practices
Since faulty Lovelace configurations can, in the worst case, cause a dashboard to fail to load or to display the wrong entities, the skill places heavy emphasis on validation before any change is applied. The rule that stands out most is that entity and service IDs must never be invented: if the Home Assistant MCP server is unavailable, the skill's description requires falling back on the repository configuration or the official integration documentation instead, and explicitly asking the user about anything that remains unresolved. Equally important is how the optional Stitch tool is handled, which is explicitly meant only for inspiring visual hierarchy and spacing; the skill explicitly forbids adopting Stitch's output directly as implementation, because that could introduce unsafe or invalid YAML structures. The skill also mandates that, on validation failure, work must stop and the error output be surfaced to the user rather than simply applying an invalid configuration, which considerably reduces the risk of a broken live dashboard.
Practical example and limits
A typical example given in the skill's own documentation is a request to refactor an existing view for a MariaDB database server to match the button-card-based system already used in other infrastructure views, without creating new templates, using four columns on desktop and two on mobile. In this case the skill would first check the existing templates in the repository, reuse matching ones, validate every referenced sensor, and only then implement the layout according to the grid rules. One clear limit of the skill is that it explicitly does not create new card templates unless specifically instructed to, instead either using the closest existing template when no suitable one exists or actively asking for permission to add one. Its scope is likewise limited to Home Assistant's own Lovelace YAML structures; it does not substitute for general web development or for deeper customization of Home Assistant's underlying frontend architecture. For users with growing, increasingly cluttered dashboards, though, it remains an effective tool for systematically restoring consistency and maintainability instead of patching things up card by card.
Frequently asked questions
Does the skill change my smart home automatically?
No. Write actions require human approval.
What happens without MCP?
Identifiers must not be guessed; check local sources and documentation.
Are local files always private?
No. Connected services may transmit content.