PluginBench
Skill
Review
Audit score 70

eightctl

steipete/clawdis

Control Eight Sleep pods via CLI—check status, adjust temperature, manage alarms and schedules.

What is eightctl?

eightctl is a command-line tool for controlling Eight Sleep smart beds. Use it to monitor pod status, adjust heating/cooling temperature, set and manage alarms, create schedules, and control audio playback.

  • Check pod status and current settings
  • Adjust bed temperature in real-time
  • List, create, and dismiss alarms
  • Create and update sleep schedules
  • Control audio playback (play, pause, state)
  • Manage bed base angle and info

How to install eightctl

npx skills add https://github.com/steipete/clawdis --skill eightctl
Prerequisites
  • Go installed (for building from source)
  • Eight Sleep account credentials
  • Config file at ~/.config/eightctl/config.yaml or environment variables (EIGHTCTL_EMAIL, EIGHTCTL_PASSWORD)
Claude Code
Cursor
Windsurf
Cline

How to use eightctl

  1. 1.Install eightctl via the skill installer (npx skills add)
  2. 2.Set up authentication: create ~/.config/eightctl/config.yaml or export EIGHTCTL_EMAIL and EIGHTCTL_PASSWORD
  3. 3.Run `eightctl status` to verify connection and see current pod state
  4. 4.Use `eightctl temp <degrees>` to adjust temperature
  5. 5.Use `eightctl alarm list` to view alarms or `eightctl alarm create` to add new ones
  6. 6.Use `eightctl schedule list` or `eightctl schedule create` for sleep schedules

Use cases

Good for
  • Automate temperature adjustments based on time of day or sleep phase
  • Set up recurring alarms integrated with your smart home workflow
  • Monitor multiple pods and their current status from the command line
  • Dismiss alarms programmatically without manual interaction
  • Query bed configuration and base settings for diagnostics
Who it's for
  • Smart home enthusiasts
  • Eight Sleep pod owners
  • Sleep optimization practitioners
  • Home automation developers

eightctl FAQ

What authentication methods does eightctl support?

eightctl supports config file (~/.config/eightctl/config.yaml) or environment variables (EIGHTCTL_EMAIL, EIGHTCTL_PASSWORD).

Is the Eight Sleep API official?

No, the API is unofficial and rate-limited. Avoid repeated logins to prevent hitting rate limits.

Can I control multiple pods?

Yes, eightctl can manage multiple Eight Sleep pods; check the status command for all connected devices.

Should I confirm before making changes?

Yes, it's recommended to confirm before changing temperature or alarms to avoid unintended adjustments.

What commands are available for the bed base?

Use `eightctl base info` to view base settings and `eightctl base angle` to adjust the bed angle.

Full instructions (SKILL.md)

Source of truth, from steipete/clawdis.


name: eightctl description: "Control Eight Sleep pods (status, temperature, alarms, schedules)." homepage: https://eightctl.sh metadata: { "openclaw": { "emoji": "🛌", "requires": { "bins": ["eightctl"] }, "install": [ { "id": "go", "kind": "go", "module": "github.com/steipete/eightctl/cmd/eightctl@latest", "bins": ["eightctl"], "label": "Install eightctl (go)", }, ], }, }

eightctl

Use eightctl for Eight Sleep pod control. Requires auth.

Auth

  • Config: ~/.config/eightctl/config.yaml
  • Env: EIGHTCTL_EMAIL, EIGHTCTL_PASSWORD

Quick start

  • eightctl status
  • eightctl on|off
  • eightctl temp 20

Common tasks

  • Alarms: eightctl alarm list|create|dismiss
  • Schedules: eightctl schedule list|create|update
  • Audio: eightctl audio state|play|pause
  • Base: eightctl base info|angle

Notes

  • API is unofficial and rate-limited; avoid repeated logins.
  • Confirm before changing temperature or alarms.