mcpField
H
ha-dashboard

ha-dashboard

github.com/nodnarbnitramデザイン・UI1680 回インストール27 週間前に更新
リポジトリ

ha-dashboard について

Lovelace ダッシュボードを扱う Home Assistant ユーザー向けの設定ガイドです。カード、ビュー、テーマを解説し、トラブルシューティングや再利用可能なテンプレートも含みます。

主な機能

  1. 01カード、ビュー、テーマの設定
  2. 02YAML と UI 管理モードの解説
  3. 03よくある設定ミスと対処法
  4. 04ダッシュボードテンプレートとカード例

活用シーン

  1. 01Lovelace ダッシュボードの作成
  2. 02カードレイアウトと条件表示の設定
  3. 03空のダッシュボードやカスタムカードの問題解決

インストール

コマンドをコピーしてターミナルで実行します。

$npx skills add https://github.com/nodnarbnitram/claude-code-extensions --skill ha-dashboard

インストール後、Claude Code で/ha-dashboardを入力して読み込まれたか確認します。

同梱ファイル

SKILL.md と一緒にインストールされる参考資料やスクリプト。

README.md
assets/
card-snippets.yaml
dashboard-template.yaml
references/
card-reference.md
common-patterns.md
theme-variables.md
view-types.md

詳細

Home Assistant ダッシュボードスキル

Home Assistant の Lovelace ダッシュボード、カード、ビュー、テーマを設定します。

はじめに

このスキルは、よくある5つのエラーを防ぎ、トークンを約40%節約します。

指標スキルなしスキルあり
セットアップ時間30分以上10分
よくあるエラー50
トークン使用量約8000約4800
このスキルで防げる既知の問題
  1. YAML のインデントエラー(スペース2つを使用し、タブは使わないでください)
  2. 無効なエンティティ ID 形式(domain.entity_name の形式にする必要があります)
  3. 必須カードプロパティの不足(例:ボタンカードの entity)
  4. ビュータイプの設定ミス
  5. テーマ変数の構文ミス

クイックスタート

ステップ1:YAML モードを有効にする(任意)
# configuration.yaml
lovelace:
  mode: yaml

重要な理由: YAML モードを使うと、ダッシュボード設定を完全に制御でき、バージョン管理も可能になります。

ステップ2:基本的なダッシュボード構造を作成する
# ui-lovelace.yaml or dashboards.yaml
title: My Home
views:
  - title: Home
    path: home
    cards:
      - type: markdown
        content: Welcome to your dashboard!

重要な理由: この最小限の構造で、複雑な設定を追加する前に YAML の設定を検証できます。

ステップ3:ビューにカードを追加する
views:
  - title: Living Room
    path: living-room
    cards:
      - type: entities
        title: Lights
        entities:
          - light.living_room
          - light.kitchen
      - type: weather-forecast
        entity: weather.home
        forecast_type: daily

重要な理由: カードはダッシュボードの基本要素です。複雑なカードに進む前に、シンプルなカードから始めましょう。

重要なルール

必ず行うこと
  • インデントには常にスペース2つを使用する
  • エンティティ ID は domain.entity_name 形式を使用する(例:light.living_room)
  • 再読み込みの前に YAML を検証する(オンラインの YAML バリデーターを使用)
  • インタラクティブカードには tap_action を定義する
  • モバイルデバイスでテストする
絶対に行わないこと
  • インデントにタブを使う
  • 変更される可能性のあるエンティティ名をハードコードする
  • 20個以上のカードを含むビューを作成する(複数のビューに分ける)
  • 天気予報カードで forecast_type を設定し忘れる(2023年以降必須)
  • モードを理解せずに、UI 管理のダッシュボードと YAML 管理のダッシュボードを混在させる
よくある間違い

誤り:

type: button
entity:light.living_room
  tap_action:
    action: toggle

正しい例:

type: button
entity: light.living_room
tap_action:
  action: toggle

理由: コロンの後のスペース不足とインデントの誤りは、最もよくある YAML エラーです。

既知の問題を防ぐ

問題根本原因解決策
「不明なカードタイプ」カスタムカードリソースの不足lovelace.resources に追加する
カードが更新されないブラウザーキャッシュ強制再読み込みを行う(Ctrl+Shift+R)
テーマが適用されない変数名の誤りテーマ変数のスペルを確認する
ダッシュボードが空白YAML 構文エラーYAML を検証し、ログを確認する
エンティティが利用不可エンティティ ID の誤りDeveloper Tools > States でエンティティを確認する

設定リファレンス

ダッシュボード設定(configuration.yaml)
lovelace:
  mode: yaml                    # or 'storage' for UI mode
  resources:
    - url: /local/card.js       # Custom card resources
      type: module
  dashboards:
    lovelace-custom:
      mode: yaml
      title: Custom
      icon: mdi:view-dashboard
      show_in_sidebar: true
      filename: custom-dashboard.yaml

主な設定:

  • mode:手動で制御する場合は yaml、UI で編集する場合は storage
  • resources:カスタムカード/CSS を読み込む(YAML モードのみ)
  • dashboards:追加のダッシュボードを定義する
ビューの設定
views:
  - title: View Name           # Tab title
    path: view-path            # URL path (/lovelace/view-path)
    icon: mdi:home             # Tab icon (optional)
    type: masonry              # masonry, panel, sections, sidebar
    theme: dark-mode           # Apply specific theme
    subview: false             # Hide from navigation
    cards: []                  # Card list

よく使うパターン

ボタンの横並びスタック
type: horizontal-stack
cards:
  - type: button
    entity: light.living_room
    name: Living
    tap_action:
      action: toggle
  - type: button
    entity: light.bedroom
    name: Bedroom
    tap_action:
      action: toggle
条件に応じたカード表示
type: conditional
conditions:
  - condition: state
    entity: binary_sensor.home_occupied
    state: "on"
card:
  type: entities
  title: Home Controls
  entities:
    - light.living_room
    - climate.thermostat

同梱リソース

リファレンス

references/ にあります:

注: 特定のトピックを詳しく調べるには、上記のリファレンスファイルを参照してください。

アセット

assets/ にあります:

これらのテンプレートをコピーし、実装の出発点として使用してください。

Context7 ドキュメント

最新のドキュメントについては、次の Context7 ライブラリ ID を使用してください。

ライブラリ ID用途
/home-assistant/home-assistant.ioユーザードキュメント — ダッシュボード、カード、ビュー、テーマ
/home-assistant/developers.home-assistant開発者向けドキュメント — カスタムカードの開発
/hacs/documentationHACS フロントエンドカード

公式ドキュメント

トラブルシューティング

ダッシュボードが空白になる

症状: ダッシュボードは読み込まれますが、何も表示されないか、エラーが表示されます。

解決策:

# Check Home Assistant logs
ha core logs | grep -i lovelace

# Validate YAML online or locally
python -c "import yaml; yaml.safe_load(open('ui-lovelace.yaml'))"
カスタムカードが読み込まれない

症状: 「Custom element doesn't exist」エラーが表示されます。

解決策:

# Ensure resource is loaded
lovelace:
  resources:
    - url: /local/my-card.js
      type: module  # or 'js' for non-module

# Check file exists at /config/www/my-card.js

セットアップチェックリスト

このスキルを使用する前に、次の項目を確認してください。

  • Home Assistant が実行中である(2023.1+)
  • 設定ファイルにアクセスできる(File Editor または VS Code アドオン)
  • エンティティ ID を把握している(開発者ツール > 状態で確認)
  • ダッシュボード管理に YAML モードと UI モードのどちらを使うか決めている

コメント