← Back to Skills Marketplace
cole-z

govee-control

by ColeZ · GitHub ↗ · v1.0.1
cross-platform ✓ Security Clean
717
Downloads
0
Stars
0
Active Installs
1
Versions
Install in OpenClaw
/install govee-control
Description
Script-free Govee OpenAPI setup and control guide. Use when the user wants to get a Govee API key, connect Govee, list devices, check state, or send power/br...
README (SKILL.md)

Govee OpenAPI (No Scripts)

Control Govee devices using manual curl commands only.

Linux System Requirements

  • Linux shell with bash available.
  • curl installed.
  • Internet access to https://developer-api.govee.com and https://developer.govee.com.
  • Govee account with supported devices linked.
  • Optional: jq for pretty-printing JSON responses.

Quick check:

bash --version | head -n 1
curl --version | head -n 1
command -v jq >/dev/null && jq --version || echo "jq not installed (optional)"

Required Credential

  • GOVEE_API_KEY (required)

Autonomous Use Guardrails

  • Only read GOVEE_API_KEY from your chosen per-user secrets file.
  • Do not read unrelated secret files or system credentials.
  • Restrict outbound requests to:
    • https://developer-api.govee.com
    • https://developer.govee.com
  • Ask before controlling multiple devices or performing bulk changes.

Get a Govee API Key

  1. Open https://developer.govee.com/.
  2. Sign in with the same Govee account that owns your devices.
  3. Go to the API key section in the developer console.
  4. Generate/apply for a key and copy it.
  5. Keep it private (treat it like a password).

If the portal UI changes, use the same flow: sign in to Govee Developer → find API key management → create key.

Secure Local Storage (Per-User)

Never store API keys in skill files, git, or chat logs.

Create a per-user secrets file (avoid /root unless intentionally running as root):

mkdir -p "$HOME/.openclaw/secrets"
cat > "$HOME/.openclaw/secrets/govee.env" \x3C\x3C'EOF'
export GOVEE_API_KEY='\x3CYOUR_API_KEY>'
EOF
chmod 600 "$HOME/.openclaw/secrets/govee.env"

Load only this variable into the current shell (no set -a):

source "$HOME/.openclaw/secrets/govee.env"

API Base URL

https://developer-api.govee.com/v1

Discover Devices First

Before controlling lights, list devices and copy your own device + model:

curl -sS -X GET "https://developer-api.govee.com/v1/devices" \
  -H "Govee-API-Key: $GOVEE_API_KEY" \
  -H "Content-Type: application/json"

View Device State

curl -sS -X GET "https://developer-api.govee.com/v1/devices/state?device=\x3CDEVICE>&model=\x3CMODEL>" \
  -H "Govee-API-Key: $GOVEE_API_KEY" \
  -H "Content-Type: application/json"

Control Commands

Turn on

curl -sS -X PUT "https://developer-api.govee.com/v1/devices/control" \
  -H "Govee-API-Key: $GOVEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"device":"\x3CDEVICE>","model":"\x3CMODEL>","cmd":{"name":"turn","value":"on"}}'

Turn off

curl -sS -X PUT "https://developer-api.govee.com/v1/devices/control" \
  -H "Govee-API-Key: $GOVEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"device":"\x3CDEVICE>","model":"\x3CMODEL>","cmd":{"name":"turn","value":"off"}}'

Brightness (1-100)

curl -sS -X PUT "https://developer-api.govee.com/v1/devices/control" \
  -H "Govee-API-Key: $GOVEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"device":"\x3CDEVICE>","model":"\x3CMODEL>","cmd":{"name":"brightness","value":75}}'

RGB color

curl -sS -X PUT "https://developer-api.govee.com/v1/devices/control" \
  -H "Govee-API-Key: $GOVEE_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"device":"\x3CDEVICE>","model":"\x3CMODEL>","cmd":{"name":"color","value":{"r":120,"g":180,"b":255}}}'

Response Check

Success usually returns:

{"code":200,"message":"Success"}

If code is not 200, treat it as failure.

Troubleshooting

  • 401 / unauthorized: key missing, expired, or invalid.
  • 429 / rate limit: slow retries.
  • command rejected: model does not support that command (supportCmds).
  • empty device list: account has no supported linked devices.

Safety Rules

  • Use placeholders in docs only (\x3CDEVICE>, \x3CMODEL>, \x3CYOUR_API_KEY>).
  • Do not include real keys or device IDs in published artifacts.
  • Prefer one-device-at-a-time actions over bulk changes.
  • Avoid pasting API keys into chat.
Usage Guidance
This skill is coherent and instruction-only, but follow basic precautions: only store GOVEE_API_KEY in a per-user secrets file (as described) and do not paste it into chats or public repos; verify network egress to https://developer-api.govee.com is intended; review any curl commands before running them (ensure device and model IDs are your own); if you allow the agent to run shell commands autonomously, restrict its permissions and confirm it cannot read other secret files — those runtime execution privileges are separate from the skill content.
Capability Analysis
Type: OpenClaw Skill Name: govee-control Version: 1.0.1 The skill bundle is benign, providing clear instructions and `curl` commands for controlling Govee devices. It includes explicit 'Autonomous Use Guardrails' in `SKILL.md` that instruct the agent to restrict outbound requests to legitimate Govee API domains and to avoid reading unrelated secret files, directly countering common exfiltration and malicious execution vectors. Credential handling instructions are secure, and there is no evidence of obfuscation, persistence mechanisms, or prompt injection attempts against the agent.
Capability Assessment
Purpose & Capability
Name/description, required binaries (bash, curl), required env var (GOVEE_API_KEY), and all curl commands target developer-api.govee.com — these are coherent and expected for a Govee API control guide.
Instruction Scope
SKILL.md contains concrete curl commands and step-by-step guidance for obtaining, storing, and using GOVEE_API_KEY. It stays focused on device discovery/state/control and explicitly warns not to read unrelated secrets or publish keys. Instructions reference only per-user files under $HOME for storing the key, which is appropriate for this purpose.
Install Mechanism
There is no install spec and no code files. Being instruction-only means nothing is downloaded or written by an installer, minimizing risk.
Credentials
Only GOVEE_API_KEY is required and declared as the primary credential. No unrelated credentials, system config paths, or excessive env variables are requested.
Persistence & Privilege
always is false and the skill does not request persistent/privileged system presence or modify other skills' configs. Autonomous invocation is allowed by platform default but that is not unusual for an instruction-only skill.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install govee-control
  3. After installation, invoke the skill by name or use /govee-control
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v1.0.1
Align metadata with runtime requirements and harden autonomous-use guidance. Added declared requirements for GOVEE_API_KEY, bash, and curl; set primaryEnv to GOVEE_API_KEY; added outbound endpoint and secret-scope guardrails; retained secure per-user key handling instructions.
Metadata
Slug govee-control
Version 1.0.1
License
All-time Installs 0
Active Installs 0
Total Versions 1
Frequently Asked Questions

What is govee-control?

Script-free Govee OpenAPI setup and control guide. Use when the user wants to get a Govee API key, connect Govee, list devices, check state, or send power/br... It is an AI Agent Skill for Claude Code / OpenClaw, with 717 downloads so far.

How do I install govee-control?

Run "/install govee-control" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is govee-control free?

Yes, govee-control is completely free (open-source). You can download, install and use it at no cost.

Which platforms does govee-control support?

govee-control is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created govee-control?

It is built and maintained by ColeZ (@cole-z); the current version is v1.0.1.

💬 Comments