跳到主要内容

govee

❖ Communityv0.1.0

Discover and control Govee lights (power, brightness, color, white temperature, scenes) through Govee's developer API. Every command is checked against the model's advertised capabilities and ranges, then confirmed by a state read-back.

Open in Hermes Desktop
hermes plugins install govee

What it adds

Tools 1

govee_lights

Environment variables it needs 1

GOVEE_API_KEY

README

From the reviewed commit 2d552cd ↗; it updates when the author re-pins.

Govee for Hermes

Control Govee lights from Hermes Agent. Ask "turn the desk lamp warm white at 40%" or "put the living room strip on Aurora", and Hermes changes that light, then reads its state back to check the change landed.

Unofficial. It isn't affiliated with or endorsed by Govee. It uses Govee's public developer API (the current openapi.api.govee.com platform, not the legacy one).

What you get

One tool, govee_lights, and a bundled skill, govee:lights, that tells the agent how to use it safely.

Action What it does
list Lists your lights with names, device IDs and the capabilities each model supports.
state Reads power, brightness, color, white temperature and online status.
scenes Lists the light's static and dynamic scenes.
power Turns a light on or off.
brightness Sets brightness in percent.
color Sets an RGB color (#RRGGBB).
temperature Sets white temperature in Kelvin.
scene Applies a scene by name.
{"action":"list"}
{"action":"brightness","device":"Desk","value":40}
{"action":"color","device":"Desk","value":"#FF8800"}
{"action":"scene","device":"Desk","value":"Aurora"}

Device names above are made up. device takes an exact device ID or a name that matches one light exactly (case-insensitive). Ambiguous or partial names are refused, so the agent never changes the wrong light.

Only lights are supported. Heaters, plugs and other appliances are deliberately left out. Segment control, music mode, DIY scenes and snapshots aren't in this version.

Requirements

  • A Govee API key. Request one in the Govee Home app under Profile > Settings > Apply for API Key; Govee emails it to you. Save it as GOVEE_API_KEY. hermes plugins install prompts for it.
  • Hermes 0.21.2 or later. No Python dependencies; it uses only the standard library.

Install

hermes plugins install promptclickrun/hermes-govee
hermes plugins enable govee

The tool shows up in your next session.

How it stays safe

  • Checks before sending. Every command is validated against what that model advertises: the capability must exist, and brightness, color and temperature must sit inside the device's own range. A scene name must match one scene exactly.
  • Checks after sending. After a change it reads the light's state up to twice, about 2 seconds apart. The result reports accepted (Govee took the command) and verified (the read-back matches). The skill tells the agent to call a change done only when it's verified.
  • No retries. A failed or rate-limited command is never resent automatically. Govee allows 30 state and scene requests per minute per device, so this isn't a tool for animations or rapid polling.

Privacy and behaviour disclosure

  • Network: it calls https://openapi.api.govee.com/router/api/v1/ only: user/devices, device/state, device/scenes and device/control. Redirects are refused so the key can't be sent anywhere else. Requests time out after 15 seconds and responses are capped at 2 MB.
  • Credentials: it reads GOVEE_API_KEY through Hermes' secret lookup. It never writes, logs or returns the key, and errors never include Govee's response bodies.
  • Writes: it changes a light only when the agent calls a control action. It stores nothing on disk.
  • No shell commands, no background processes, no telemetry, no self-updating.

Development

python -m unittest discover -s tests
hermes plugins validate . --install-deps

Tests use made-up devices and a fake transport. They never touch a real light or the network.

License

Apache-2.0

← Back to the catalog · catalog built Oct 8, 2026