← 返回 Skills 市场
lintertion

Geeklink Home

作者 lintertion · GitHub ↗ · v0.1.0 · MIT-0
cross-platform ⚠ suspicious
110
总下载
0
收藏
0
当前安装
1
版本数
在 OpenClaw 中安装
/install geeklink-home
功能描述
[English] Control Geeklink Home local gateway devices and scenes over LAN via the bundled self-contained Node.js runtime. Supports device listing, scene list...
使用说明 (SKILL.md)

Geeklink Home Control | Geeklink Home 局域网控制

[English] | 中文


English

Use the local Geeklink Home gateway over LAN through the bundled self-contained Node.js skill runtime.

Features

  • Local LAN access to the Geeklink Home gateway
  • Pairing-token based authentication
  • Device catalog, scene catalog, and state snapshot access
  • Background watcher with recent event and single-device state queries
  • Scene activation and local device control
  • Multi-gang panels are expanded into practical sub-devices such as 吊灯 and 筒灯
  • Packaged around the bundled vendor/geeklink-lan-cli.js runtime
  • The persistent runtime keeps a single watcher instance per loaded skill

Setup

  1. Ensure vendor/geeklink-lan-cli.js exists in the installed skill package.
  2. Open the gateway details page in the Geeklink app and go to AI Skill Access.
  3. Copy gatewayHost and pairingToken from that page.
  4. Use the cross-platform Node wrapper scripts in scripts/ to query devices, scenes, states, and execute actions.
  5. When loaded by ClawHub/OpenClaw as a skill runtime, the watcher is started automatically and tools can read recent events.

Core Workflow

  1. Open the gateway details page in the Geeklink app and enter AI Skill Access.
  2. Read the gatewayHost and pairingToken shown on that page.
  3. Run node scripts/geeklink-home.js login --host \x3Chost> --pairing-token \x3Ctoken> once to cache session.
  4. Use:
    • node scripts/geeklink-home.js catalog devices --refresh
    • node scripts/geeklink-home.js catalog devices --query 吊灯 --refresh
    • node scripts/geeklink-home.js catalog scenes --refresh
    • node scripts/geeklink-home.js state snapshot --refresh
    • node scripts/geeklink-home.js scene activate \x3CsceneId>
    • node scripts/geeklink-home.js device control \x3CcatalogDeviceId> ...

Natural Language Mapping

When the user asks for:

  • "What devices do I have?" -> run catalog devices --refresh
  • "What scenes are available?" -> run catalog scenes --refresh
  • "Turn on living room light" -> find the matching expanded catalog_device_id (for example 吊灯 under a panel), then run device control \x3Cid> --power on
  • "Set bedroom AC to 26 cool high" -> device control \x3Cid> --power on --temperature 26 --mode cool --fan-speed high
  • "Run away mode" -> find scene_id, then run scene activate \x3CsceneId>
  • "Is the living room light on?" -> use geeklink_get_device_state
  • "What changed recently?" -> use geeklink_get_recent_events

Do not guess catalog_device_id. Always list devices first if the mapping is unclear. When a panel exposes named roads, prefer the expanded road device like 吊灯 instead of the parent panel name.

Release Notes

  • Version: 0.1.0
  • Validated:
    • Device catalog
    • Scene catalog
    • Local device control
    • State snapshot
    • Single-watcher recent event tracking
  • ClawHub publisher owner id for this package is lintertion.

中文说明

通过内置的自包含 Node.js 运行时,在局域网内直接访问 Geeklink Home 网关。

功能

  • 在局域网内访问 Geeklink Home 网关
  • 基于 pairing token 的认证
  • 读取设备目录、场景目录、状态快照
  • 提供后台 watcher、最近事件和单设备状态查询
  • 执行场景和本地设备控制
  • vendor/geeklink-lan-cli.js 为底层运行时
  • 多路面板会展开成更符合用户习惯的子设备,例如 吊灯筒灯
  • 常驻 skill runtime 只会启动一个 watcher 实例

使用前准备

  1. 确认已安装的 skill 包中存在 vendor/geeklink-lan-cli.js
  2. 在 Geeklink App 的网关详情页进入 AI技能接入 页面。
  3. 在该页面查看并复制 gatewayHostpairingToken
  4. 通过 scripts/ 中的跨平台 Node 包装脚本完成登录、列表查询、场景执行和设备控制。
  5. 如果由 ClawHub/OpenClaw 以常驻 skill runtime 加载,watcher 会自动启动,并支持读取最近事件。

建议工作流

  1. 先在 Geeklink App 的网关详情页打开 AI技能接入 页面。
  2. 记录页面展示的 gatewayHostpairingToken
  3. 首次使用先执行:
    node scripts/geeklink-home.js login --host \x3Chost> --pairing-token \x3Ctoken>
    
  4. 然后按需执行:
    • node scripts/geeklink-home.js catalog devices --refresh
    • node scripts/geeklink-home.js catalog devices --query 吊灯 --refresh
    • node scripts/geeklink-home.js catalog scenes --refresh
    • node scripts/geeklink-home.js state snapshot --refresh
    • node scripts/geeklink-home.js scene activate \x3CsceneId>
    • node scripts/geeklink-home.js device control \x3CcatalogDeviceId> ...

自然语言意图映射

  • “我有哪些设备” -> catalog devices --refresh
  • “有哪些场景” -> catalog scenes --refresh
  • “打开客厅主灯” -> 先找到展开后的子设备 catalog_device_id,再执行 device control \x3Cid> --power on
  • “卧室空调调到 26 度制冷高速” -> device control \x3Cid> --power on --temperature 26 --mode cool --fan-speed high
  • “执行离家模式” -> 找到 scene_id,再执行 scene activate \x3CsceneId>
  • “客厅灯现在开着吗” -> geeklink_get_device_state
  • “最近发生了什么变化” -> geeklink_get_recent_events

不要猜测 catalog_device_id。如果设备匹配不确定,先列出设备再确认。对于多路面板,优先使用展开后的子设备名,例如 吊灯筒灯,不要只盯着父设备名。

发布说明

  • 版本:0.1.0
  • 已验证能力:
    • 设备目录
    • 场景目录
    • 本地设备控制
    • 状态快照
    • 单实例 watcher 最近事件跟踪
  • 该包发布到 ClawHub 时使用的 ownerIdlintertion
安全使用建议
This package appears coherent for local LAN control of a Geeklink gateway, but take these precautions before installing or enabling it: 1) Review the bundled vendor/geeklink-lan-cli.js (or run it in a sandbox) to check for any external network endpoints or telemetry beyond local LAN access. 2) Treat the pairingToken as a secret — confirm where the runtime stores cached sessions and whether those files are protected or written to persistent disk. 3) If possible, run the skill in a network-limited environment that allows LAN access but blocks outbound internet to detect any unexpected exfiltration. 4) If you are not comfortable reviewing the JS bundle, prefer running the CLI manually from an isolated machine rather than enabling it as a persistent skill.
功能分析
Type: OpenClaw Skill Name: geeklink-home Version: 0.1.0 The skill bundle provides a legitimate interface for controlling Geeklink Home devices over a local network. The core logic in `vendor/geeklink-lan-cli.js` implements a standard SDK and CLI for interacting with a local gateway via HTTP, using a pairing-token authentication flow. It stores session data locally in `~/.geeklink-home/config.json`, which is typical for such tools. The instructions in `SKILL.md` and the internal system prompt are well-aligned with the stated purpose of home automation and do not contain any malicious prompt injection or data exfiltration attempts.
能力评估
Purpose & Capability
Name/description match the implementation: the skill bundles a Node.js CLI (vendor/geeklink-lan-cli.js) and small wrapper scripts that require the node binary. The included scripts and SKILL.md describe LAN host + pairingToken usage which aligns with controlling a local Geeklink gateway.
Instruction Scope
Runtime instructions only instruct the agent/user to obtain gatewayHost and pairingToken from the official app and run the packaged Node.js CLI. The workflow is narrowly scoped to device/scene listing, state checks, and control. One note: SKILL.md and scripts mention caching a session (login command) and a persistent watcher; where session tokens or watcher state are stored is not specified in the docs—that could result in sensitive pairing tokens being written to disk inside the skill runtime (expected for this use but worth auditing).
Install Mechanism
No external install/download step is declared; the package is instruction-and-file based with bundled vendor code. This is low risk compared with arbitrary remote downloads. The vendor CLI is large (~185KB) — since it's included rather than fetched at install time, inspect it for unexpected network calls/telemetry prior to use.
Credentials
The skill requests no environment variables, no credentials, and no config paths. The only sensitive inputs are the gatewayHost and pairingToken the user must copy from the official app, which is appropriate for local gateway control. Still, those tokens are sensitive and may be stored by the runtime.
Persistence & Privilege
The skill is not forced-always and uses normal autonomous invocation defaults. SKILL.md documents a persistent watcher (single instance) started when the skill runtime is loaded — this is consistent with the described functionality and not an unexplained privilege escalation.
如何使用
  1. 确保已安装 OpenClaw(本地或 Docker 部署)
  2. 在对话框中输入安装命令:/install geeklink-home
  3. 安装完成后,直接呼叫该 Skill 的名称或使用 /geeklink-home 触发
  4. 根据 Skill 的参数说明提供必要输入,即可获得结构化输出
版本历史
v0.1.0
Initial release of Geeklink Home LAN control skill. - Supports discovering and controlling Geeklink Home gateway devices and scenes over LAN. - Device and scene catalog listing, device state checks, and scene activation via local gateway access. - Pairing-token based authentication required; works with bundled Node.js runtime. - Multi-gang panels are expanded into named sub-devices for easier control (e.g., `吊灯`, `筒灯`). - Includes background watcher for recent events and single-device state queries. - Supports both English and Chinese usage documentation.
元数据
Slug geeklink-home
版本 0.1.0
许可证 MIT-0
累计安装 0
当前安装数 0
历史版本数 1
常见问题

Geeklink Home 是什么?

[English] Control Geeklink Home local gateway devices and scenes over LAN via the bundled self-contained Node.js runtime. Supports device listing, scene list... 它是一个面向 Claude Code / OpenClaw 的 AI Agent Skill 插件,目前累计下载 110 次。

如何安装 Geeklink Home?

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

Geeklink Home 是免费的吗?

是的,Geeklink Home 完全免费,采用 MIT-0 许可证,可自由下载、安装和使用。

Geeklink Home 支持哪些平台?

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

谁开发了 Geeklink Home?

由 lintertion(@lintertion)开发并维护,当前版本 v0.1.0。

💬 留言讨论