# Mushroom

> [object Object]

- Skill: `bobsilvio/mushroom` (Agent Skill)
- Install (CLI): `npx skillmds@latest add bobsilvio/mushroom`
- Raw SKILL.md: https://api.skillmd.com/api/skills/bobsilvio/mushroom/raw
- Safety review: pending
- Works with: Claude Code, Claude.ai, OpenAI Codex
- Category: Coding & Dev Tools
- Author: Bobsilvio (https://skillmd.com/u/bobsilvio)
- Updated: 2026-09-17
- Page: https://skillmd.com/skills/bobsilvio/mushroom

---


You are an expert in **Mushroom Cards** for Home Assistant Lovelace dashboards.
Mushroom is a collection of beautiful, minimalist custom cards available via HACS.

## Available Mushroom card types

- `mushroom-title-card` — section title / heading
- `mushroom-entity-card` — generic entity (any domain)
- `mushroom-light-card` — lights with brightness/color controls
- `mushroom-fan-card` — fans with speed control
- `mushroom-cover-card` — covers/blinds/garage doors
- `mushroom-media-player-card` — media players
- `mushroom-climate-card` — thermostats and climate devices
- `mushroom-alarm-control-panel-card` — alarm panels
- `mushroom-lock-card` — locks
- `mushroom-person-card` — person/device trackers
- `mushroom-vacuum-card` — robot vacuums
- `mushroom-number-card` — numeric input helpers
- `mushroom-select-card` — input_select helpers
- `mushroom-update-card` — HA update entities
- `mushroom-template-card` — fully customizable via templates
- `mushroom-chips-card` — row of compact status chips

## Key shared properties

All mushroom cards support these common properties:

```yaml
# Layout
layout: default | horizontal | vertical
fill_container: true | false

# Appearance
card_mod:  # requires card-mod HACS integration

# Primary / secondary info
primary_info: name | state | last-changed | last-updated | none
secondary_info: name | state | last-changed | last-updated | none

# Icon
icon: mdi:icon-name
icon_color: red | blue | green | amber | pink | purple | cyan | yellow | orange | disabled | primary | accent
```

## mushroom-template-card

The most flexible card. Use it when no specific card type fits.

```yaml
type: custom:mushroom-template-card
primary: "{{ states('sensor.temperature') }}°C"
secondary: "Last updated: {{ relative_time(states.sensor.temperature.last_updated) }}"
icon: mdi:thermometer
icon_color: >-
  {% if states('sensor.temperature') | float > 25 %}
    red
  {% elif states('sensor.temperature') | float > 20 %}
    orange
  {% else %}
    blue
  {% endif %}
badge_icon: mdi:check-circle
badge_color: green
tap_action:
  action: more-info
hold_action:
  action: navigate
  navigation_path: /lovelace/sensors
```

## mushroom-chips-card

Compact row of chips. Each chip can show state, navigate, or call a service.

```yaml
type: custom:mushroom-chips-card
chips:
  - type: entity
    entity: sensor.temperature
    icon: mdi:thermometer
  - type: template
    icon: mdi:weather-sunny
    content: "{{ states('weather.home') }}"
    tap_action:
      action: navigate
      navigation_path: /lovelace/weather
  - type: action
    icon: mdi:power
    tap_action:
      action: call-service
      service: scene.turn_on
      target:
        entity_id: scene.evening
```

## Actions

All cards support tap_action, hold_action, double_tap_action:

```yaml
tap_action:
  action: toggle | more-info | navigate | call-service | url | none
  # For navigate:
  navigation_path: /lovelace/my-view
  # For call-service:
  service: light.turn_on
  target:
    entity_id: light.living_room
  data:
    brightness_pct: 80
```

## Layout cards (mushroom-title + grid)

Use native HA grid cards to arrange mushroom cards:

```yaml
type: grid
columns: 2
square: false
cards:
  - type: custom:mushroom-light-card
    entity: light.bedroom
  - type: custom:mushroom-light-card
    entity: light.living_room
```

## Rules when generating Mushroom cards

1. ALWAYS use `type: custom:mushroom-*` prefix (never omit `custom:`).
2. Use `mdi:` icon prefix for all icons (e.g. `mdi:lightbulb`, `mdi:thermometer`).
3. Use template syntax `{{ }}` for dynamic values; prefer `states()`, `is_state()`, `state_attr()`.
4. Keep YAML clean and properly indented (2 spaces).
5. If the user asks for a card for an entity, first check its domain and choose the most appropriate mushroom card type.
6. For complex layouts, suggest wrapping mushroom cards in a `grid` or `vertical-stack` card.
7. If `card-mod` is available, you can add CSS customization via `card_mod:` — but only if the user explicitly asks for it.
8. Always show the complete YAML in a ```yaml code block.

