Skip to main content

scene-manager

Manages and activates Home Assistant scenes, creates new scenes from current device states, lists all available scenes, and handles room-level device grouping. Use when the user says "activate movie mode", "turn on the goodnight scene", "create a new scene", "set up reading mode", "list my scenes", "save current device states as a scene", "romantic lighting please", "what scenes do I have", or wants to activate, create, list, or manage multi-device scenes in Home Assistant.

Aller à l'installation

Informations de source

Dépôt
autonomous-ai/autonomous-intern
Dernière activité de la source
29 mai 2026 à 11:00
Langue détectée de SKILL.md
anglais
Étoiles
15
Forks
1

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
scene-manager
description
Manages and activates Home Assistant scenes, creates new scenes from current device states, lists all available scenes, and handles room-level device grouping. Use when the user says "activate movie mode", "turn on the goodnight scene", "create a new scene", "set up reading mode", "list my scenes", "save current device states as a scene", "romantic lighting please", "what scenes do I have", or wants to activate, create, list, or manage multi-device scenes in Home Assistant.
# Scene Manager ## Quick Start Activate scenes via `POST /api/services/scene/turn_on`, list all scenes via `GET /api/states` filtered to the `scene` domain, and generate scene YAML definitions from current device states or user-specified device configurations. ## Workflow 1. Identify the request type: activate, list, create, or describe a scene 2. **Activate:** map the user's scene name to a `scene.*` entity_id, then call `scene.turn_on` 3. **List:** fetch all states, filter by `scene` domain, and return a formatted list with descriptions 4. **Create from current state:** fetch current states of the target devices, build scene YAML, present for user review 5. **Create from specification:** build scene YAML from user-described device configurations 6. Confirm activation result or present the generated YAML for the user to add to HA ## Examples **Example 1: Activate a scene** Input: "Activate movie mode" Output: ``` SCENE ACTIVATION ================ Scene: scene.movie_mode Service: scene.turn_on Result: 200 OK — Scene activated Devices updated: - light.living_room → dimmed to 20%, warm white (2200K) - light.hallway → off - cover.living_room_blinds → closed (position: 0) - media_player.living_room_tv → on ``` **Example 2: List all scenes** Input: "Show me all available scenes" Output: ``` AVAILABLE SCENES (8 total) =========================== Scene Entity | Friendly Name | Last Activated ------------------------------|---------------------|--------------------- scene.morning_routine | Morning Routine | 03/24/2026 06:30 AM scene.movie_mode | Movie Mode | 03/23/2026 08:15 PM scene.dinner_time | Dinner Time | 03/23/2026 06:45 PM scene.goodnight | Goodnight | 03/23/2026 11:00 PM scene.away_mode | Away Mode | 03/22/2026 09:00 AM scene.romantic | Romantic | 03/20/2026 07:30 PM scene.bright_work | Bright Work | 03/24/2026 08:00 AM scene.kids_bedtime | Kids Bedtime | 03/23/2026 08:30 PM ``` **Example 3: Create a new scene** Input: "Create a 'reading' scene: living room light at 70% cool white, all other lights off" Output: ```yaml # Add this to your scenes.yaml or via HA UI → Scenes → Add Scene - name: Reading entities: light.living_room: state: "on" brightness_pct: 70 color_temp_kelvin: 4000 light.bedroom_main: state: "off" light.kitchen: state: "off" light.hallway: state: "off" ``` Scene entity_id will be: `scene.reading` ## Tools - Use `WebFetch` to call `POST /api/services/scene/turn_on` and `GET /api/states` - Use `Write` to save generated scene YAML to a file if the user requests it ## Error Handling - If scene name is ambiguous → list scenes with similar names and ask user to confirm - If scene entity_id is not found → search `GET /api/states` for `scene.*` entities and suggest matches - If a device in the scene is `unavailable` → activate the scene anyway and flag the unavailable device - If user asks to "save" a new scene → present YAML and explain: add to `scenes.yaml` or use HA UI → Configuration → Scenes ## Connectors (Optional) This skill works standalone. When connected to external tools, it unlocks additional capabilities: | Connector | What it enables | |-----------|----------------| | ~~home assistant | Activate and create scenes via the Home Assistant REST API | | ~~IoT platform | Coordinate scenes across multiple smart home ecosystems | | ~~voice assistant | Activate scenes with voice commands like "Hey Google, movie time" | ## Rules - Scene entity_id format: `scene.<name_with_underscores>` - `scene.turn_on` accepts optional `transition` parameter (seconds) for smooth lighting changes - When creating scenes from current state, only include entities that are not in `unavailable` or `unknown` state - For room-level grouping use `area_id` or list all `entity_id` values in the room - Scenes override only the attributes specified — unspecified devices are not affected - Do not include sensitive entities (locks, alarms) in scenes without explicit user confirmation ## Output Template ``` SCENE ACTIVATION ================ Scene: [scene.entity_id] Service: scene.turn_on Result: [HTTP status] — [success message or error] Devices updated: - [entity_id] → [new state / attributes] ``` ## Related Skills - `device-controller` -- For controlling individual devices outside of scenes - `automation-builder` -- For automating scene activation based on triggers - `sensor-monitor` -- For checking sensor states before creating or activating scenes
Voir sur GitHub