返回 Skill 列表
extension
分类: AI Agent 能力无需 API Key

ha-scripts

Home Assistant YAML脚本 —— 可调用、可重用的动作序列,支持可选参数。在创建脚本、定义可重用序列或向脚本中添加参数化字段时使用。

person作者: jakexiaohubgithub

Home Assistant YAML Scripts

Scripts are reusable, callable action sequences — unlike automations they have no trigger and must be called explicitly.

YAML Style Rules

  • 2-space indentation (never tabs)
  • Lowercase booleans: true / false
  • Entity IDs: domain.entity_name (lowercase, underscores)

Script Template

script:
  morning_routine:
    alias: 'Morning Routine'
    mode: single # single | restart | queued | parallel
    fields:
      brightness:
        description: 'Light brightness percentage'
        default: 100
        selector:
          number:
            min: 0
            max: 100
    sequence:
      - action: light.turn_on
        target:
          area_id: kitchen
        data:
          brightness_pct: '{{ brightness }}'
      - delay:
          seconds: 2
      - action: media_player.play_media
        target:
          entity_id: media_player.kitchen_speaker
        data:
          media_content_id: 'media-source://...' # provider-specific media ID (e.g. spotify:playlist:..., media-source://...) — not a free-text name
          media_content_type: 'playlist'

Calling a Script

# From an automation
- action: script.morning_routine
  data:
    brightness: 80
# From the UI: Developer Tools → Actions → script.morning_routine

When to Use Scripts vs Automations

| Use Case | Choose | | ------------------------------------- | ---------- | | Triggered by an event or state change | Automation | | Called by multiple automations | Script | | Complex reusable logic | Script | | One-off response to a trigger | Automation |

Related Skills

  • Automations → ha-yaml-automations
  • Blueprints → ha-blueprints