Mijia Smart Home Control
Control Xiaomi Mijia smart devices via the mijiaAPI.
Setup
Before using this skill, you need to:
- Install dependencies:
cd /path/to/mijia-skill
uv sync
- Set your device ID as an environment variable:
export MIJIA_LAMP_DID="your_device_id"
- First run will prompt for Xiaomi account login via QR code.
Finding Device IDs
To find your device IDs, use the mijia-api library:
from mijiaAPI import mijiaAPI
api = mijiaAPI()
api.login()
devices = api.get_device_list()
for d in devices:
print(f"{d['name']}: {d['did']}")
How to Use
Skill path:
~/.clawdbot/skills/mijia
Lamp Control Commands
# Navigate to skill directory
cd ~/.claude/skills/mijia
Check status
uv run python scripts/lamp_cli.py status
Turn on/off
uv run python scripts/lamp_cli.py on
uv run python scripts/lamp_cli.py off
uv run python scripts/lamp_cli.py toggle
Adjust brightness (1-100%)
uv run python scripts/lamp_cli.py brightness 50
Adjust color temperature (2700-6500K)
uv run python scripts/lamp_cli.py temp 4000
Set mode
uv run python scripts/lamp_cli.py mode reading # Reading mode
uv run python scripts/lamp_cli.py mode computer # Computer mode
uv run python scripts/lamp_cli.py mode night # Night reading
uv run python scripts/lamp_cli.py mode antiblue # Anti-blue light
uv run python scripts/lamp_cli.py mode work # Work mode
uv run python scripts/lamp_cli.py mode candle # Candle effect
uv run python scripts/lamp_cli.py mode twinkle # Twinkle alert
Natural Language Understanding
When the user says the following, execute the corresponding command:
| User Says | Command |
|---|
| Turn on the light / open lamp | scripts/lamp_cli.py on
|
| Turn off the light / close lamp | scripts/lamp_cli.py off
|
| Toggle the light | scripts/lamp_cli.py toggle
|
| Brighter / more bright | Check status first, then increase by 20-30% |
| Dimmer / less bright | Check status first, then decrease by 20-30% |
| Full brightness / maximum | scripts/lamp_cli.py brightness 100
|
| Minimum brightness | scripts/lamp_cli.py brightness 1
|
| Warm light | scripts/lamp_cli.py temp 2700
|
| Cool light / white light | scripts/lamp_cli.py temp 6500
|
| Reading mode | scripts/lamp_cli.py mode reading
|
| Computer mode | scripts/lamp_cli.py mode computer
|
| Night mode | scripts/lamp_cli.py mode night
|
| Lamp status / what's the light status | scripts/lamp_cli.py status
|
Before Executing
- Navigate to skill directory:
cd ~/.clawdbot/skills/mijia
- Ensure
MIJIA_LAMP_DID
environment variable is set
- Run with uv:
uv run python scripts/lamp_cli.py <command>
- Report the result to the user after execution