tuyactl
This project provides a command-line interface (tuyactl
) for controlling Tuya devices. It interacts with a separate Tuya Server (Iβm still thinking a better way of doing that).
Requirements
- uv: A fast and modern Python package installer and runner. Install it by following the instructions on the uv documentation siteβ.
- Tuya Local Keys: You will need the local keys for your Tuya devices. Follow the tinytuya setup wizardβ to obtain these.
Quick Start
-
Install
uv
:Follow the official installation instructions on the uv documentation siteβ. The recommended method is to use the standalone installer, which you can download and run with the following command:
curl -LsSf https://astral.sh/uv/install.sh | sh
-
Obtain Tuya Local Keys:
Follow the tinytuya setup wizardβ to get the local keys for your Tuya devices. Place the resulting
snapshot.json
file in your home directory (~
). You can customize the location of this file using environment variables (see below). -
Run the server:
nohup tuyad > tuyad.log 2>&1 &
-
Run
tuyactl
:To see the available commands and options, run:
tuyactl --help
To execute a specific command, use the following syntax:
tuyactl <command> [options]
Replace
<command>
with one of the available commands:list
,on
,off
,color
,brightness
,temperature
,mode
,music
. Use the-- help
option to see the available options for each command.For example, to list all your Tuya devices, run:
tuyactl list
Configuration
snapshot.json
Location: You can customize the location of thesnapshot.json
file (containing your Tuya device keys) using environment va riables. (Details on this to be added later).