← Back to Skills Marketplace
wmantly

Tasmota

by William Mantly · GitHub ↗ · v0.1.0
cross-platform ✓ Security Clean
1023
Downloads
0
Stars
2
Active Installs
1
Versions
Install in OpenClaw
/install tasmota-skill
Description
Discover, monitor, and control Tasmota smart home devices on local networks. Use when tasks involve finding Tasmota devices via network scanning, checking device status and power states, controlling devices (on-off, brightness, color), managing device inventory, or any other Tasmota management operations on ESP8266 or ESP32 devices running Tasmota firmware.
Usage Guidance
This skill appears coherent for discovering and controlling Tasmota devices, but review a few practical points before use: (1) The discovery script performs an active ping sweep and HTTP requests across your local /24 — run it only on networks you control and during maintenance windows if needed. (2) The status script expects an inventory CSV and a control script under ~/.openclaw/workspace; verify or adjust these paths before running so it doesn't fail or use unexpected files. (3) The scripts call local binaries (ping and python3) and execute subprocesses — ensure you run them in a safe environment and inspect the included Python files (they are provided) to confirm behavior. (4) Because the source is 'unknown', prefer running the scripts in an isolated agent or container initially and/or audit the files line-by-line if you need stronger assurance.
Capability Analysis
Type: OpenClaw Skill Name: tasmota-skill Version: 0.1.0 The OpenClaw Tasmota skill is designed for local network discovery and control of Tasmota smart home devices. All scripts (`tasmota-control.py`, `tasmota-discovery.py`, `tasmota-status.py`) operate within the stated purpose, interacting with local network devices via HTTP and using standard network tools like `ping`. The use of `subprocess.run` with a list of arguments prevents shell injection vulnerabilities, even when processing IP addresses from an inventory file (`tasmota-inventory.csv`). There is no evidence of data exfiltration, unauthorized persistence, or prompt injection attempts in `SKILL.md` to mislead the agent into malicious actions. The skill's capabilities are aligned with its description and implemented securely.
Capability Assessment
Purpose & Capability
Name/description align with the included scripts: discovery, control, and status collection via HTTP to local IPs. Minor inconsistencies: the status script expects the control script at Path.home()/.openclaw/workspace/scripts/tasmota-control.py (not the included relative scripts/ path) and discovery has a SUBNET constant but actually derives the subnet from the host IP — these are implementation quirks but not evidence of malicious intent.
Instruction Scope
Instructions direct the agent to perform a ping sweep and HTTP requests against hosts on the local subnet and to read a CSV inventory from the user's home (.openclaw/workspace/memory/tasmota-inventory.csv). That behavior is consistent with the stated purpose, but the status script hard-codes reading from a workspace path and spawns a local 'python3' subprocess pointing to a workspace path (which may not exist), so the script will access files under the user's home directory and execute local commands.
Install Mechanism
There is no install spec (instruction-only with included Python scripts). Nothing is downloaded from external URLs or extracted. Risk is limited to running the provided scripts on the host.
Credentials
The skill declares no required environment variables or credentials and the code does not attempt to read secrets. It does access Path.home() and expects to find an inventory CSV under .openclaw/workspace; this is proportional to its inventory/status functionality but is a file-system access the user should be aware of. The scripts also rely on system utilities (ping, python3) although no binaries were declared.
Persistence & Privilege
The skill does not request permanent presence (always is false), does not modify other skills or system-wide configuration, and does not persist credentials. It reads an inventory file and suggests saving scan output, but it will not write to system locations by itself.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install tasmota-skill
  3. After installation, invoke the skill by name or use /tasmota-skill
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.1.0
Initial release of Tasmota device management skill. - Automated discovery of Tasmota (ESP8266/ESP32) devices on local networks via network scanning. - Monitor device status, including power state, brightness, color, and network information. - Control devices with commands for power (on/off/toggle), brightness, and color adjustment. - Inventory management: maintain CSV records of discovered devices for bulk operations. - Includes scripts for one-off control, bulk status checks, and managing device inventory. - Detailed documentation and usage examples provided in SKILL.md.
Metadata
Slug tasmota-skill
Version 0.1.0
License
All-time Installs 2
Active Installs 2
Total Versions 1
Frequently Asked Questions

What is Tasmota?

Discover, monitor, and control Tasmota smart home devices on local networks. Use when tasks involve finding Tasmota devices via network scanning, checking device status and power states, controlling devices (on-off, brightness, color), managing device inventory, or any other Tasmota management operations on ESP8266 or ESP32 devices running Tasmota firmware. It is an AI Agent Skill for Claude Code / OpenClaw, with 1023 downloads so far.

How do I install Tasmota?

Run "/install tasmota-skill" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Tasmota free?

Yes, Tasmota is completely free (open-source). You can download, install and use it at no cost.

Which platforms does Tasmota support?

Tasmota is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Tasmota?

It is built and maintained by William Mantly (@wmantly); the current version is v0.1.0.

💬 Comments