Answers from the documentation; checking which model is on duty
Hi - I answer from the OpenSmartRoute documentation: routing, the API, plans and quotas, self-hosting. Ask away, or open a support ticket if you need a person.
Grounded in the docs - follow a source before acting on it.
eightctl - Skill - OpenSmartRoute
Skillv1.0.0
eightctl
Control Eight Sleep pods (status, temperature, alarms, schedules).
Imported from openclaw/openclaw (skills/eightctl/SKILL.md) via skills.sh. Install upstream with npx skills add openclaw/openclaw --skill eightctl. Copyright stays with the author.
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.
Use it
Copy one of these into your project. Installing also returns the manifest and these snippets.
# after Install: the listing is in your workspace's routing pool - a plan picks it for its slotcurl-s-X POST https://osr-api.kindrock-caaab1a2.centralindia.azurecontainerapps.io/api/v1/route -H 'Authorization: Bearer $OSR_API_KEY' -H 'Content-Type: application/json' -d '{"text": "...", "plan": true}'
Installed into a catalogue, chosen by a router
Install eightctl and it becomes one more candidate the router can pick - when it fits.
A listing is a routing target with a manifest: what it does, which domains it covers, what it costs and who publishes it. Once installed it sits beside your own models and tools, is scored like any other candidate for each request, and shows up in the trace when it wins. Ratings come from workspaces that installed it, one per account.