Skills

StudioLights

Controls Aputure and amaran studio lights via the amaran Desktop WebSocket API: named...

Install

npx skills add danielmiessler/LifeOS --skill StudioLights -g -a claude-code -y
Repository
danielmiessler/LifeOS19.7k
Category
Media
Updated
8d ago
License
MIT
Context cost
Lightabout 925 tokens
Runs scripts
Yes, review before use

What it does

Controls Aputure and amaran studio lights via the amaran Desktop WebSocket API: named scenes, per-light brightness and color temp, save the current state. USE WHEN lights recording, lights normal, recording lights, set lights for recording, studio lights, light scene, dim the key light, set the lights, lights too bright, save this lighting, green screen lights. NOT FOR house/Hue lights or thermostat (a home-control skill), studio audio, or video editing.

StudioLights

Deterministic control of a studio lighting rig through amaran Desktop's local WebSocket API (ws://127.0.0.1:33782/ws, protocol v2, the same local API the official Bitfocus Companion module uses). The tool auto-launches amaran Desktop if it isn't running.

Ideal State

  • Every lighting change runs through Tools/Lights.ts against the rig the USER tree's devices.json and scenes.json define; no fixture, name or level is assumed from this skill.
  • Done is said only when the lights themselves read back the requested state.
  • A saved scene restores exactly the levels saved under its name, whether "recording", "normal" or any later caller asks for it.

Intent Routing

IntentTriggerFile
Control"recording", "set the lights", "light scene", "dim X", "save this lighting"Intents/Control.md
FileRead when
Setup.mdfirst-time setup: amaran Desktop, finding node IDs, and writing devices.json and scenes.json

Data & Config

The rig lives in the USER tree, never in this skill: LIFEOS/USER/CUSTOMIZATIONS/SKILLS/StudioLights/devices.json holds each fixture's name, node ID, model and whether it has color temperature, and scenes.json holds the saved scenes. Free-form notes about the rig (where each light stands, what each scene is for, which Shortcut or macro calls a scene by name) go in Config.md in the same folder; the tool never reads it. First-time setup, including how to find node IDs and a worked example of a voice trigger, is in Setup.md.

Tools/Lights.ts exits with an error pointing at Setup.md when devices.json is missing; Lights.ts devices lists the node IDs to put in it and runs before the file exists. The tool finds that folder from its own skill folder's name, so the skill folder and its USER folder must share a name.

Gotchas

Read the whole SKILL.md on GitHub

More in Media