Google Nest
SkillDev toolsLets your agent check Google Nest thermostats and cameras and adjust home temperatures like a google claude skill.
Use Google Nest in Claude, ChatGPT or Ahel Desktop
Free. Sign in, add Google Nest and connect your AI. About a minute.
Also: Claude Code · Cursor · Codex
Then ask your AI: use the Google Nest skill
Details
Instructions available. Your AI can read the instructions. Execution depends on the setup they require.
Account requirements not reviewed. Check the skill instructions before use; Ahel provides instructions and does not run this skill.
No other account needed.
Add Ahel to your AI once: Claude, ChatGPT, Cursor, Claude Code or Codex. Then ask it to use this.
About this skill
Read Nest device state (thermostats, cameras, doorbells) and set thermostat modes and setpoints via the Smart Device Management API. Trigger phrases: google nest, nest thermostat, nest camera, sdm.
What this skill tells your AI
The instructions your AI receives, as published by anil-matcha/awesome-muse-connectors in connectors/google-nest/SKILL.md and read by Ahel’s review.
Purpose
Read traits and execute commands on Google Nest devices through the Smart Device Management (SDM) API: thermostats (mode, setpoints, ambient readings), cameras and doorbells (events, live-stream generation). Use it when the user asks about their Nest thermostat, wants to change heating/cooling, or wants camera/doorbell state. Thermostat commands start or stop real HVAC, so they are confirmation-gated (see Operating Rules).
Tooling
All commands go through bin/google-nest.py. --project is always the
Device Access project id:
bin/google-nest.py --project <project-id> auth # status check: list structures
bin/google-nest.py --project <project-id> structures # list homes
bin/google-nest.py --project <project-id> devices # list devices with traits
bin/google-nest.py --project <project-id> device --id <id> # read one device's traits
# Writes. Thermostat commands are MEDIUM: --confirm on first use per device,
# then proceed:
bin/google-nest.py --project <project-id> execute --id <thermostat-id> \
--command ThermostatMode.SetMode --param mode=HEAT \
--confirm "set the upstairs Nest to heat"
bin/google-nest.py --project <project-id> execute --id <thermostat-id> \
--command ThermostatTemperatureSetpoint.SetHeat --param celsius=21.5 \
--confirm "set the upstairs Nest heating target to 21.5 degrees"
# Camera live-stream generation is LOW (non-physical): proceeds with a notice:
bin/google-nest.py --project <project-id> execute --id <camera-id> \
--command CameraLiveStream.GenerateRtspStream
--param values are JSON-parsed (mode=HEAT stays a string, celsius=21.5
becomes a number). The sdm.devices.commands. prefix is optional. The device
--id is the last path segment of the device name shown by devices.
Auth
- Provider id:
google-nest(credential is collected ascustom.google-nest) - Collection: OAuth 2.0 authorization-code flow via the secure credential
flow (
credentials.request_api_access). Set up: create a Google Cloud project, register it in the Device Access Console (one-time $5 individual registration fee), enable the Smart Device Management API, and authorize with scopehttps://www.googleapis.com/auth/sdm.service. Access tokens last about an hour; store the refresh token so the connector can renew. - Required scopes:
https://www.googleapis.com/auth/sdm.service - Allowed hosts:
smartdevicemanagement.googleapis.com - Status check:
bin/google-nest.py --project <project-id> auth
Operating Rules
- MEDIUM actuations confirm on first use per device.
ThermostatMode.SetModeandThermostatTemperatureSetpoint.SetHeat/SetCoolstart or stop real heating/cooling:--confirm "<exact physical effect>"is required the first time a thermostat is actuated; the CLI records it locally (~/.config/muse-connectors/google-nest/confirmed.json) and later runs proceed. - LOW actuations proceed with a logged notice.
CameraLiveStream.GenerateRtspStreamonly mints a stream URL; it prints a notice and runs. The URL expires, so hand it to the user promptly instead of storing it. - Cameras and doorbells expose read-only event traits (motion, person,
package, doorbell press) via
device. They do not actuate hardware; treat event reads as data. - Never set a thermostat to an extreme or to Off without the user naming that exact change. Confirming "set it to heat" does not cover turning the system Off.
- Reads (
auth,structures,devices,device) never need confirmation. - Cost warning: one-time $5 Device Access registration fee per Google account; no recurring API fee, but per-project rate limits apply, so avoid tight polling loops.
- Never exfiltrate the credential: the CLI only ever handles surrogates. Do not print, log, or transmit the token value.
Files
- SKILL.md
- bin/google-nest.py
Maturity
🧪 Draft: written from Google's public SDM API docs; not yet live-tested
end-to-end. The :executeCommand request shape and --param parsing are
untested against a real Nest device.
Signals
- GitHub stars
- 1k
- Forks
- 282
- Last commit
- Sep 2026
Ahel review
S4info
community integration, published by anil-matcha, not google
Automated review, not a security audit. Ruleset v1+k2.
Advanced
- Item type
- skill
- Key
google-nest- Source
- github.com/anil-matcha/awesome-muse-connectors
github.com/anil-matcha/awesome-muse-connectors