openclaw/skills/cielo-ac/SKILL.md
Control Mr Cool / Cielo Home minisplit AC units. Use when asked about AC, air conditioning, minisplit, heating, cooling, room temperature, thermostat (for minisplits specifically), turning heat on/off, setting temperature on a minisplit, fan speed, or swing position.
npx skillsauth add Dbochman/dotfiles cielo-acInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Control Mr Cool minisplit AC units via the Cielo Home API. The cielo CLI is on PATH (wrapper at ~/.openclaw/bin/cielo).
| Name | MAC | Location | |------|-----|----------| | Basement | B48A0ACEC6CC | Basement | | Living Room | B48A0ACEC8B4 | Living room | | Dylan's Office | B48A0AC4612D | Office | | Bedroom | B48A0ACEC639 | Bedroom |
Device names are fuzzy-matched — use any substring. "bedroom" matches Bedroom, "office" matches Dylan's Office, "living" matches Living Room, etc.
cielo status
Returns device name, online status, power, mode, temperature setpoint, fan speed, swing position, room temperature, and humidity for each unit.
cielo status -d bedroom
cielo devices
cielo on -d bedroom
cielo off -d "living room"
To reliably turn on a unit and set its temperature, use separate commands — do NOT use set --power on as it updates the API state but often fails to send the IR signal to the physical unit:
cielo on -d bedroom
cielo temp 72 -d bedroom
cielo temp 72 -d bedroom
If the unit is off, this will turn it on automatically.
cielo mode heat -d bedroom
cielo mode cool -d office
Valid modes: cool, heat, auto, dry, fan
cielo fan high -d bedroom
Valid speeds: auto, low, medium, high
cielo swing auto -d bedroom
Valid positions: auto, auto/stop, adjust, pos1, pos2, pos3, pos4, pos5, pos6
cielo set -d bedroom --temp 68 --mode heat --fan low --swing auto
All flags are optional — only include what you want to change. Available flags: --temp, --mode, --fan, --swing, --power
WARNING: set --power on is unreliable — it updates the cloud state but often does not send the IR signal. Use the explicit on command instead, then set for other parameters.
cielo status --json
cielo status -d bedroom --json
cielo devices --json
Tokens expire approximately every hour. A LaunchAgent (com.openclaw.cielo-refresh) runs every 30 minutes to automatically refresh tokens via CDP browser capture. This should keep tokens fresh indefinitely as long as the Cielo session cookies haven't expired.
The LaunchAgent at ~/Library/LaunchAgents/com.openclaw.cielo-refresh.plist starts pinchtab, auto-logs in via persisted cookies in ~/.pinchtab/chrome-profile/, captures a fresh token via Chrome DevTools Protocol, and verifies it works. Logs at ~/.openclaw/logs/cielo-refresh.log.
Cookies persist for weeks/months. If they expire, a one-time manual re-login is needed:
BRIDGE_HEADLESS=false pinchtab &
sleep 5
pinchtab nav "https://home.cielowigle.com/"
# Sign in manually in the visible browser window, solve CAPTCHA
# Then kill pinchtab — cookies are now persisted
pkill -f pinchtab
cielo setup
Then paste the accessToken and sessionId from browser DevTools.
These are minisplit AC units, not the Nest thermostats. When the user asks about:
The Nest thermostats control central HVAC. The Cielo minisplits are supplemental heating/cooling in specific rooms.
status first to show the user current state before making changesset command with --temp will automatically turn the unit on if it's offset --power on is unreliable — use explicit on command then temp/mode/etc. separatelyon -d <name> → temp <F> -d <name> → mode <mode> -d <name>development
Search the web for current information, news, facts, and answers. Use when asked questions about current events, needing to look something up, finding websites, researching topics, or when you need up-to-date information beyond your training data.
development
Summarize any URL, YouTube video, podcast, PDF, or file into concise text. Use when asked to read an article, summarize a link, get the gist of a video or podcast, extract content from a URL, or when you need to understand what a web page or document contains.
development
Play music via Spotify and control Google Home speakers. Use when asked to play music, songs, artists, playlists, podcasts, or control speakers/volume/audio.
testing
Create new OpenClaw skills, modify and improve existing skills, and measure skill performance with evals. Use when users want to create a skill from scratch, update or optimize an existing skill, run evals to test a skill, benchmark skill performance with variance analysis, or optimize a skill's description for better triggering accuracy. Also use when asked to "make a skill", "turn this into a skill", "improve this skill", or "test this skill".