Awesome-omni-skill lilhomie
Control HomeKit devices via REST API. Use when controlling lights, switches, scenes, or checking device status in the user's home.
install
source · Clone the upstream repo
git clone https://github.com/diegosouzapw/awesome-omni-skill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/diegosouzapw/awesome-omni-skill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/development/lilhomie" ~/.claude/skills/diegosouzapw-awesome-omni-skill-lilhomie && rm -rf "$T"
manifest:
skills/development/lilhomie/SKILL.mdsource content
lilhomie - HomeKit REST API
Control HomeKit devices from your AI assistant. lilhomie is a macOS app that exposes HomeKit via a local REST API.
When to use (trigger phrases)
- "turn on/off the lights"
- "toggle the [device name]"
- "control my home"
- "what devices are on?"
- "trigger [scene name] scene"
- "turn on/off the [room]"
Prerequisites
- macOS 13.0+ with lilhomie.app installed and running
- HomeKit devices configured in Apple Home
- lilhomie server running on
localhost:8420
API Basics
Base URL:
http://localhost:8420
Important: Use underscores for spaces in device/room names:
Desk_Lamp, Guest_Bedroom
Common Commands
List all devices
curl localhost:8420/devices
Toggle a device
curl -X POST localhost:8420/device/Desk_Lamp/toggle
Get device status
curl localhost:8420/device/Desk_Lamp
Room-scoped toggle (for duplicate names)
curl -X POST localhost:8420/room/Office/device/Lamp/toggle
Turn room on/off
curl -X POST localhost:8420/room/Office/on curl -X POST localhost:8420/room/Office/off
List scenes
curl localhost:8420/scenes
Trigger a scene
curl -X POST localhost:8420/scene/Good_Night/trigger
Endpoints Reference
| Method | Endpoint | Description |
|---|---|---|
| GET | | List all devices |
| GET | | Get device details |
| POST | | Toggle device |
| POST | | Set brightness/state |
| GET | | List all rooms |
| GET | | Get devices in room |
| POST | | Turn all room devices on |
| POST | | Turn all room devices off |
| POST | | Room-scoped toggle |
| GET | | List all scenes |
| POST | | Trigger a scene |
Known Issues
- Toggle response
state may be inverted (#1)isOn - Use room-scoped endpoints when device names are duplicated across rooms
Tips
- Always use room-scoped endpoints for devices with common names like "Light" or "Lamp"
- Don't trust the
field in responses until issue #1 is fixedisOn - If unsure of device names, query
first/devices