--- id: elgato version: "5.1.2" license: MIT license_treatment: permissive maintenance: active --- # elgato — Asynchronous Python client for Elgato Lights. License: permissive · Maintenance: active · Downloads: 73.9K/mo ## What it is and what it does This package provides an async-first Python interface to Elgato Light devices, letting you query device state and control brightness, color, and power status programmatically. It wraps the Elgato device HTTP API with aiohttp, making it suitable for integration into async applications, home automation frameworks, or scripts that need non-blocking control of multiple lights. The client is built on aiohttp for async HTTP requests, mashumaro for efficient data serialization, and orjson for fast JSON parsing. It targets Python 3.11+ and has been actively maintained since 2019, with the latest release in December 2023. The package is straightforward to use: instantiate an Elgato client with a device hostname, then await methods like info(), state(), and light() to read or modify device settings. Use it for: - Integrate Elgato lights into a home automation system that needs async control of multiple devices. - Build a streaming setup controller that toggles Key Light devices based on application state or schedule. - Monitor and log Elgato light state changes in real time for analytics or debugging. - Create a custom lighting dashboard or CLI tool that queries and controls multiple Elgato devices. - Automate light adjustments in response to external events (e.g., calendar, weather, or application notifications). ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Asynchronous Python client for controlling and monitoring Elgato Light devices (Key Light, Key Light Air, Key Light Mini, Light Strip) over the network. Yes. The package is stable, actively maintained, has no known vulnerabilities, and installs with minimal friction. It is the right choice if you need to control Elgato lights from Python and your application is already async or willing to adopt asyncio. The MIT license is permissive and the dependency footprint is small. ## Install pip install elgato uv add elgato poetry add elgato ## Installing elgato Before you install: Low install friction with a pure-Python wheel and four lightweight async-friendly dependencies (aiohttp, mashumaro, orjson, yarl). Active maintenance with a recent commit on 2026-08-06 and stable production status. License in practice: MIT license is permissive; you can use, modify, and distribute this package with minimal restrictions, provided you include the original copyright notice and license text. Quickstart: pip install elgato import asyncio from elgato import Elgato async def main(): async with Elgato("elgato-key-light.local") as elgato: state = await elgato.state() await elgato.light(on=(not state.on)) asyncio.run(main()) Requires Python 3.11 or later; Elgato device must be reachable on the network at the provided hostname or IP address. Verify before relying: - Whether the package supports discovery of Elgato devices on the network or requires manual hostname/IP entry. - What specific control parameters (brightness, color temperature, etc.) are available beyond on/off toggling. - Whether the package handles reconnection or session management automatically across network interruptions. ## Package facts - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 73.9K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags elgato lights control, async elgato client, key light automation, elgato device api, smart lighting python, elgato light strip control, asyncio elgato, asyncio, smart-home, hardware-control [View on SkillFed](https://skillfed.io/packages/elgato) · [View on PyPI](https://pypi.org/project/elgato/)