✓ Verified
💻 Development
✓ Enhanced Data
Google Home
Control Google Nest devices.
- Rating
- 4 (301 reviews)
- Downloads
- 14,559 downloads
- Version
- 1.0.0
Overview
Control Google Nest devices.
Complete Documentation
View Source →
Google Home / Nest CLI
Control Google Nest devices via the Smart Device Management (SDM) API using curl + jq.
Setup (Required)
- Create a Google Cloud Project
- Go to https://console.cloud.google.com
- Create a new project
- Enable the SDM API
- APIs & Services → Library
- Search "Smart Device Management"
- Enable it
- Create OAuth Credentials
- APIs & Services → Credentials
- Create OAuth 2.0 Client ID
- Download the JSON file
- Extract
client_idandclient_secret - Register Your Devices
- Visit https://nests.google.com/frame/register-user
- Accept the terms
- Get Access Token
bash
# Replace with your values
curl -s \
-d "client_id=YOUR_CLIENT_ID" \
-d "client_secret=YOUR_CLIENT_SECRET" \
-d "refresh_token=YOUR_REFRESH_TOKEN" \
-d "grant_type=refresh_token" \
https://www.googleapis.com/oauth2/v4/token
Quick Start
bash
# List devices
google-home-cli devices
# Get thermostat info
google-home-cli thermostat "Living Room" --info
# Set temperature (heat/cool/auto)
google-home-cli thermostat "Living Room" --temp 72
# Query camera
google-home-cli camera "Front Door" --status
Device Commands
Thermostats
google-home-cli thermostat— show current temp/humidity--temp— set target temperature--mode heat|cool|auto— set HVAC mode--fan on|auto— control fan
Cameras & Doorbells
google-home-cli camera— get stream/status--snapshot— download current image--stream— start live stream URL
Speakers & Displays
google-home-cli speaker— device info--volume 0-100— set volume--stop— stop playback
Environment Variables
bash
export GOOGLE_HOME_CLIENT_ID="your-client-id"
export GOOGLE_HOME_CLIENT_SECRET="your-client-secret"
export GOOGLE_HOME_ACCESS_TOKEN="your-access-token"
Alternative: Direct API Calls
bash
# List all devices
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" \
"https://smartdevicemanagement.googleapis.com/v1/enterprises/YOUR_PROJECT_ID/devices"
# Get device traits
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" \
"https://smartdevicemanagement.googleapis.com/v1/enterprises/YOUR_PROJECT_ID/devices/YOUR_DEVICE_ID"
Helper Script
A nest CLI helper is included at scripts/nest:
bash
# Make it available globally
ln -sf /Users/mitchellbernstein/clawd/skills/google-home/scripts/nest /usr/local/bin/nest
# List devices
nest list
# Get thermostat status
nest status "enterprises/PROJECT_ID/devices/DEVICE_ID"
# Set temperature (Celsius)
nest temp "enterprises/PROJECT_ID/devices/DEVICE_ID" 22
# Set mode
nest mode "enterprises/PROJECT_ID/devices/DEVICE_ID" HEAT
Configuration
Create ~/.config/google-home/config.json:
json
{
"project_id": "your-google-cloud-project-id",
"access_token": "your-oauth-access-token"
}
Notes
- Tokens expire; refresh them periodically
- Device names use full path:
enterprises/PROJECT_ID/devices/DEVICE_ID - Temperature is in Celsius (convert from Fahrenheit if needed)
- Camera streams require additional permissions
Installation
Terminal bash
openclaw install google-home
Copied!
💻Code Examples
google-home-cli camera "Front Door" --status
google-home-cli-camera-front-door---status.txt
## Device Commands
### Thermostats
- `google-home-cli thermostat <name>` — show current temp/humidity
- `--temp <degrees>` — set target temperature
- `--mode heat|cool|auto` — set HVAC mode
- `--fan on|auto` — control fan
### Cameras & Doorbells
- `google-home-cli camera <name>` — get stream/status
- `--snapshot` — download current image
- `--stream` — start live stream URL
### Speakers & Displays
- `google-home-cli speaker <name>` — device info
- `--volume 0-100` — set volume
- `--stop` — stop playback
## Environment Variables"https://smartdevicemanagement.googleapis.com/v1/enterprises/YOUR_PROJECT_ID/devices/YOUR_DEVICE_ID"
-httpssmartdevicemanagementgoogleapiscomv1enterprisesyourprojectiddevicesyourdeviceid.txt
## Helper Script
A `nest` CLI helper is included at `scripts/nest`:nest mode "enterprises/PROJECT_ID/devices/DEVICE_ID" HEAT
nest-mode-enterprisesprojectiddevicesdeviceid-heat.txt
## Configuration
Create `~/.config/google-home/config.json`:example.sh
# Replace with your values
curl -s \
-d "client_id=YOUR_CLIENT_ID" \
-d "client_secret=YOUR_CLIENT_SECRET" \
-d "refresh_token=YOUR_REFRESH_TOKEN" \
-d "grant_type=refresh_token" \
https://www.googleapis.com/oauth2/v4/tokenexample.sh
# List devices
google-home-cli devices
# Get thermostat info
google-home-cli thermostat "Living Room" --info
# Set temperature (heat/cool/auto)
google-home-cli thermostat "Living Room" --temp 72
# Query camera
google-home-cli camera "Front Door" --statusexample.sh
export GOOGLE_HOME_CLIENT_ID="your-client-id"
export GOOGLE_HOME_CLIENT_SECRET="your-client-secret"
export GOOGLE_HOME_ACCESS_TOKEN="your-access-token"example.sh
# List all devices
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" \
"https://smartdevicemanagement.googleapis.com/v1/enterprises/YOUR_PROJECT_ID/devices"
# Get device traits
curl -s -H "Authorization: Bearer $ACCESS_TOKEN" \
"https://smartdevicemanagement.googleapis.com/v1/enterprises/YOUR_PROJECT_ID/devices/YOUR_DEVICE_ID"example.sh
# Make it available globally
ln -sf /Users/mitchellbernstein/clawd/skills/google-home/scripts/nest /usr/local/bin/nest
# List devices
nest list
# Get thermostat status
nest status "enterprises/PROJECT_ID/devices/DEVICE_ID"
# Set temperature (Celsius)
nest temp "enterprises/PROJECT_ID/devices/DEVICE_ID" 22
# Set mode
nest mode "enterprises/PROJECT_ID/devices/DEVICE_ID" HEATexample.json
{
"project_id": "your-google-cloud-project-id",
"access_token": "your-oauth-access-token"
}Tags
#smart_home-and-iot
Quick Info
Category Development
Model Gemini 2.0
Complexity One-Click
Author mitchellbernstein
Last Updated 3/10/2026
🚀
Optimized for
Gemini 2.0
Ready to Install?
Get started with this skill in seconds
openclaw install google-home
Related Skills
✓ Verified
💻 Development
4claw
4claw — a moderated imageboard for AI agents.
🧠 Claude-Ready
)}
★ 4.4 (118)
↓ 4,990
v1.0.0
✓ Verified
💻 Development
Aap Passport
Agent Attestation Protocol - The Reverse Turing Test.
🧠 Claude-Ready
)}
★ 4.3 (89)
↓ 4,621
v1.0.0
✓ Verified
💻 Development
Acestep Lyrics Transcription
Transcribe audio to timestamped lyrics using OpenAI Whisper or ElevenLabs Scribe API.
⚡ GPT-Optimized
)}
★ 3.8 (274)
↓ 17,648
v1.0.0
✓ Verified
💻 Development
Adaptive Suite
A continuously adaptive skill suite that empowers Clawdbot.
🧠 Claude-Ready
)}
★ 4.7 (88)
↓ 1,625
v1.0.0