← 返回 Skills 市场
stillstellung

Openclaw Lifx

作者 J · GitHub ↗ · v1.0.1
cross-platform ⚠ suspicious
809
总下载
0
收藏
0
当前安装
2
版本数
在 OpenClaw 中安装
/install lifx
功能描述
Control LIFX smart lights via natural language. Toggle, set colors/brightness, activate scenes, create gradients on multi-zone devices.
使用说明 (SKILL.md)

LIFX Light Control

Control LIFX smart lights via the LIFX HTTP API through natural language.

References

  • lifx-api.sh — Bash wrapper for all LIFX API calls
  • scene-status.py — Scene matching and active detection
  • setup.sh — Device discovery and skill configuration

Configuration

Set your LIFX API token (get one at https://cloud.lifx.com/settings):

bash setup.sh \x3Cyour-token>

This discovers your lights, groups, and scenes, then generates a personalized SKILL.md with your device context.

Device Context

Run bash setup.sh \x3Cyour-token> to populate this section with your lights, rooms, and scenes. The setup script queries the LIFX API and rewrites this file with your personal device context.

Location: (not configured)

Rooms and Lights

(populated by setup.sh)

Scenes

(populated by setup.sh)

Multi-zone Devices

(populated by setup.sh)

How to Control Lights

Discover lights

bash lifx-api.sh discover

Shows all lights organized by room with power state, color, and brightness.

Toggle lights on/off

bash lifx-api.sh toggle \x3Cselector>

Selectors:

  • Individual light: id:\x3Clight_id>
  • Group/room: group_id:\x3Cgroup_id>
  • All lights: all

Set light state (color, brightness, power)

bash lifx-api.sh state \x3Cselector> '{"power":"on","color":"blue","brightness":0.75,"duration":1.0}'

Color formats:

  • Named: red, blue, green, white, warm white, purple, orange
  • Hex: #ff6b35
  • Kelvin: kelvin:2700 (warm) to kelvin:6500 (cool daylight)
  • HSB: hue:240 saturation:1.0

Always include "power":"on" and a brightness value when setting colors, or lights with brightness 0 will stay invisible.

Activate a scene

bash lifx-api.sh scene \x3Cscene_uuid>

Toggle a room

bash lifx-api.sh group-toggle \x3Cgroup_id>

Multi-zone gradients (Beam / Strip devices)

Multi-zone devices support individually addressable zones. Create gradients by setting different zone ranges:

bash lifx-api.sh state 'id:\x3Clight_id>|0-4' '{"power":"on","color":"purple","brightness":1.0,"duration":1.0}'
bash lifx-api.sh state 'id:\x3Clight_id>|5-9' '{"power":"on","color":"red","brightness":1.0,"duration":1.0}'

The pipe character in zone selectors is automatically URL-encoded by the script.

Check scene status

python3 scene-status.py all    # Show all active scenes
python3 scene-status.py check \x3Cuuid>  # Check specific scene

List current light states

bash lifx-api.sh list    # Full JSON
bash lifx-api.sh groups  # Summary by room

Behavior Guidelines

  • When user says a room name, match it to the group IDs in the device context above.
  • Default brightness to 1.0 (100%) when setting colors unless user specifies otherwise.
  • Default duration to 1.0 seconds for smooth transitions.
  • For "turn off" commands, use {"power":"off"} — don't toggle (toggling is ambiguous).
  • For "turn on" commands, use {"power":"on","brightness":1.0} to ensure visibility.
  • When asked about what's on/what scene is active, use the scene-status tool or discover command.
  • Be conversational about results: "Done, bedroom is now blue at 75%" not "API returned 207".
安全使用建议
This skill appears to do what it says: it uses your LIFX token to call the official LIFX API and manage lights. Before running setup.sh, review the scripts (they are included) and be aware that setup.sh will save your token to .lifx-token in the skill directory and generate a SKILL.md containing your room names, group IDs, and scene UUIDs. Recommendations: (1) Use a dedicated LIFX personal access token (revokable) rather than a long-lived account credential. (2) After setup, consider whether you want the token stored on disk; if not, remove .lifx-token and export LIFX_TOKEN at runtime. (3) Ensure your system has curl, jq, python3, and the Python requests package installed — the metadata did not declare these dependencies. (4) The scene-status.py file has an absolute Python shebang (/storage/venv/bin/python3) but the scripts invoke python3 explicitly; you can run it with your system python3 to avoid the hardcoded path. (5) Only install this skill in environments you trust, since SKILL.md will contain readable device and scene identifiers that could reveal household device topology if the skill directory is shared or backed up.
功能分析
Type: OpenClaw Skill Name: lifx Version: 1.0.1 The skill is classified as suspicious due to two critical vulnerabilities. Firstly, `lifx-api.sh`'s `state` command passes a user-controlled JSON body directly to `curl -d "$body"`, making it vulnerable to shell injection if the `$body` contains malicious shell metacharacters. Secondly, `setup.sh` embeds unsanitized data (light, group, scene names) fetched from the LIFX API directly into the generated `SKILL.md`. If a malicious actor could control these names, they could inject arbitrary markdown or commands into `SKILL.md`, leading to prompt injection against the OpenClaw agent. These vulnerabilities could lead to remote code execution or agent compromise, but there is no clear evidence of intentional malicious behavior by the skill author.
能力评估
Purpose & Capability
Name/description (LIFX control) match the scripts and README. The skill legitimately needs a LIFX API token and uses the LIFX HTTP API. Minor inconsistency: the registry metadata lists no required binaries, but the README and scripts expect curl, jq, and python3 (and the Python code requires the requests library).
Instruction Scope
SKILL.md instructs the agent to run the included scripts (setup.sh, lifx-api.sh, scene-status.py) and to use the LIFX API. The scripts only call the LIFX API endpoints (api.lifx.com) and read/write local skill files (.lifx-token, SKILL.md). There are no instructions to read unrelated system files or send data to other external endpoints.
Install Mechanism
No install spec (instruction-only) and all runtime code is included in the skill bundle — no network installs or archive extraction. This is low-risk from an install-mechanism perspective.
Credentials
Only LIFX_TOKEN is required (declared and used). The token is used exclusively to authenticate to the LIFX API. No unrelated credentials or environment variables are requested.
Persistence & Privilege
Not set to always:true and does not modify other skills. However, setup.sh persists your token to a local file (.lifx-token) and rewrites SKILL.md to include your device context (room names, group IDs, scene UUIDs). This is expected for the stated functionality but is persistent storage of sensitive info and device metadata.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install lifx
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /lifx 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v1.0.1
Remove personal device context from published skill; device context is now populated locally by setup.sh
v1.0.0
Initial release: natural language LIFX control, scene detection, multi-zone gradients, auto-discovery
元数据
Slug lifx
版本 1.0.1
许可证
累计安装 1
当前安装数 0
历史版本数 2
常见问题

Openclaw Lifx 是什么?

Control LIFX smart lights via natural language. Toggle, set colors/brightness, activate scenes, create gradients on multi-zone devices. 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 809 次。

如何安装 Openclaw Lifx?

在 OpenClaw 或 Claude Code 对话框中运行命令「/install lifx」即可一键安装,无需额外配置。

Openclaw Lifx 是免费的吗?

是的,Openclaw Lifx 完全免费(开源免费),可自由下载、安装和使用。

Openclaw Lifx 支持哪些平台?

Openclaw Lifx 跨平台运行,可在任意部署了 OpenClaw / Claude Code 的环境中使用(cross-platform)。

谁开发了 Openclaw Lifx?

由 J(@stillstellung)开发并维护,当前版本 v1.0.1。

💬 留言讨论