Skill v1.0.0
currentLLM-judged scan90/100version: "1.0.0" name: alexa-cli description: Control Amazon Alexa devices and smart home via the alexacli CLI. Use when a user asks to speak/announce on Echo devices, control lights/thermostats/locks, send voice commands, or query Alexa. homepage: https://github.com/buddyh/alexa-cli metadata: {"clawdbot":{"emoji":"🔊","requires":{"bins":["alexacli"]},"install":[{"id":"brew","kind":"brew","formula":"buddyh/tap/alexacli","bins":["alexacli"],"label":"Install alexacli (brew)"},{"id":"go","kind":"go","module":"github.com/buddyh/alexa-cli/cmd/alexa@latest","bins":["alexacli"],"label":"Install alexa-cli (go)"}]}}
Alexa CLI
Use alexacli to control Amazon Echo devices and smart home via the unofficial Alexa API.
Devices
alexacli devicesalexacli devices --json
Text-to-Speech
# Speak on a specific devicealexacli speak "Hello world" -d "Kitchen Echo"# Announce to ALL devicesalexacli speak "Dinner is ready!" --announce# Device name matching is flexiblealexacli speak "Build complete" -d Kitchen
Voice Commands (Smart Home Control)
Send any command as if you spoke it to Alexa:
# Lightsalexacli command "turn off the living room lights" -d Kitchenalexacli command "dim the bedroom lights to 50 percent" -d Bedroom# Thermostatalexacli command "set thermostat to 72 degrees" -d Bedroom# Locksalexacli command "lock the front door" -d Kitchen# Musicalexacli command "play jazz music" -d "Living Room"# Timersalexacli command "set a timer for 10 minutes" -d Kitchen
The -d flag specifies which Echo processes the command.
Ask (Get Response Back)
Send a command and capture Alexa's text response:
alexacli ask "what's the thermostat set to" -d Kitchen# Output: The thermostat is set to 68 degrees.alexacli ask "what's on my calendar today" -d Kitchen --json
Useful for querying device state or getting Alexa-specific info.
History
alexacli historyalexacli history --limit 5 --json
Command Reference
| Command | Description | |
|---|---|---|
alexacli devices | List all Echo devices | |
alexacli speak <text> -d <device> | Text-to-speech on device | |
alexacli speak <text> --announce | Announce to all devices | |
alexacli command <text> -d <device> | Voice command (smart home, music, etc.) | |
alexacli ask <text> -d <device> | Send command, get response back | |
alexacli history | View recent voice activity | |
alexacli auth | Configure authentication |
Notes
- Uses Amazon's unofficial API (same as Alexa app)
- Refresh token valid ~14 days, re-run
alexacli authif expired - Device names support partial, case-insensitive matching
- For AI/agentic use,
alexacli commandwith natural language is preferred