Skip to content

OpenHue CLI is a command-line interface for interacting with Philips Hue smart lighting systems.

License

Notifications You must be signed in to change notification settings

openhue/openhue-cli

Repository files navigation

OpenHue CLI

Build CodeQL Maintainability with Code Climate Test Coverage Docker Image Size (tag)

Overview

OpenHue CLI is a command-line interface for interacting with Philips Hue smart lighting systems. This tool provides a convenient way to control your Philips Hue lights and perform various tasks using the command line.

How to setup OpenHue CLI

Features

  • Discover and connect to Philips Hue bridges.
  • List available lights and their status.
  • Control lights: on, off, brightness, and color.
  • Schedule light actions.
  • MCP Server: Enable AI assistants to control your lights.

For a complete list of features and usage, please refer to the OpenHue CLI online documentation.

MCP Server (AI Integration)

OpenHue CLI includes a built-in Model Context Protocol (MCP) server that allows AI assistants like Claude to control your Philips Hue lights through natural language.

Available Tools

Tool Description
list_lights List all lights with optional room filter
list_rooms List all rooms with status and brightness
list_scenes List all scenes with optional room filter
set_light Control a light (on/off, brightness, color, temperature)
set_room Control all lights in a room
activate_scene Activate a scene with optional dynamic mode

Setup with Claude Desktop

Add the following to your Claude Desktop configuration file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\\Claude\\claude_desktop_config.json
Linux: ~/.config/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "openhue": {
      "command": "openhue",
      "args": ["mcp"]
    }
  }
}

Once configured, you can ask Claude things like:

  • "Turn on the living room lights"
  • "Set the bedroom to 50% brightness"
  • "Activate the Relax scene"
  • "What lights are currently on?"

Getting Started

To begin developing with Open-Hue's OpenAPI specification, follow these steps:

Prerequisites

Before you start, ensure that you have the following prerequisites installed:

  • Golang that is used to build and run the project
  • GoReleaser that is used to build and release the binaries. Used behind the scene when running the make build command
  • oapi-codegen (optional) that is used to generate the client code from the openhue-api specification. Used behind the scene when running the make generate command
  • Docker (optional) that is used to build the CLI Docker Image and run it as a container

Fork the Repository

Before contributing to OpenHue CLI, it's a good practice to fork the repository to your own GitHub account. This will create a copy of the project that you can work on independently.

Build

  1. Clone the OpenHue CLI repository to your local machine:
git clone https://github.com/openhue/openhue-cli.git
cd openhue-cli
  1. Run the following command to build OpenHue CLI on your local environment:
make build

Test

Run the following command to execute all the tests and calculate the code coverage:

make test

If you want, you can also run the following command to visualize the coverage analysis in your browser:

make coverage

or use make coverage html=true to visualize the HTML report in your default web browser

Generate the OpenHue API Client

Run the following command to generate the OpenHue API Client:

make generate

If there was any OpenAPI specification change, this command will update the ./openhue/gen/openhue.openhue.go file. Please note that this file must never be manually edited!

You also generate the client from another spec location:

make generate spec=/path/to/local/openhue.yaml

License

GitHub License

Open-Hue is distributed under the Apache License 2.0, making it open and free for anyone to use and contribute to. See the license file for detailed terms.

About

OpenHue CLI is a command-line interface for interacting with Philips Hue smart lighting systems.

Topics

Resources

License

Stars

Watchers

Forks

Contributors 7