# Send Tasmota to your agent
Hand the extracted package to your coding agent with a concrete install brief instead of figuring it out manually.
## Fast path
- Download the package from Yavira.
- Extract it into a folder your agent can access.
- Paste one of the prompts below and point your agent at the extracted folder.
## Suggested prompts
### New install

```text
I downloaded a skill package from Yavira. Read SKILL.md from the extracted folder and install it by following the included instructions. Tell me what you changed and call out any manual steps you could not complete.
```
### Upgrade existing

```text
I downloaded an updated skill package from Yavira. Read SKILL.md from the extracted folder, compare it with my current installation, and upgrade it while preserving any custom configuration unless the package docs explicitly say otherwise. Summarize what changed and any follow-up checks I should run.
```
## Machine-readable fields
```json
{
  "schemaVersion": "1.0",
  "item": {
    "slug": "tasmota-skill",
    "name": "Tasmota",
    "source": "tencent",
    "type": "skill",
    "category": "通讯协作",
    "sourceUrl": "https://clawhub.ai/wmantly/tasmota-skill",
    "canonicalUrl": "https://clawhub.ai/wmantly/tasmota-skill",
    "targetPlatform": "OpenClaw"
  },
  "install": {
    "downloadUrl": "/downloads/tasmota-skill",
    "sourceDownloadUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=tasmota-skill",
    "sourcePlatform": "tencent",
    "targetPlatform": "OpenClaw",
    "packageFormat": "ZIP package",
    "primaryDoc": "SKILL.md",
    "includedAssets": [
      "SKILL.md",
      "scripts/tasmota-control.py",
      "scripts/tasmota-discovery.py",
      "scripts/tasmota-status.py"
    ],
    "downloadMode": "redirect",
    "sourceHealth": {
      "source": "tencent",
      "slug": "tasmota-skill",
      "status": "healthy",
      "reason": "direct_download_ok",
      "recommendedAction": "download",
      "checkedAt": "2026-05-01T11:36:56.255Z",
      "expiresAt": "2026-05-08T11:36:56.255Z",
      "httpStatus": 200,
      "finalUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=tasmota-skill",
      "contentType": "application/zip",
      "probeMethod": "head",
      "details": {
        "probeUrl": "https://wry-manatee-359.convex.site/api/v1/download?slug=tasmota-skill",
        "contentDisposition": "attachment; filename=\"tasmota-skill-0.1.0.zip\"",
        "redirectLocation": null,
        "bodySnippet": null,
        "slug": "tasmota-skill"
      },
      "scope": "item",
      "summary": "Item download looks usable.",
      "detail": "Yavira can redirect you to the upstream package for this item.",
      "primaryActionLabel": "Download for OpenClaw",
      "primaryActionHref": "/downloads/tasmota-skill"
    },
    "validation": {
      "installChecklist": [
        "Use the Yavira download entry.",
        "Review SKILL.md after the package is downloaded.",
        "Confirm the extracted package contains the expected setup assets."
      ],
      "postInstallChecks": [
        "Confirm the extracted package includes the expected docs or setup files.",
        "Validate the skill or prompts are available in your target agent workspace.",
        "Capture any manual follow-up steps the agent could not complete."
      ]
    }
  },
  "links": {
    "detailUrl": "https://openagent3.xyz/skills/tasmota-skill",
    "downloadUrl": "https://openagent3.xyz/downloads/tasmota-skill",
    "agentUrl": "https://openagent3.xyz/skills/tasmota-skill/agent",
    "manifestUrl": "https://openagent3.xyz/skills/tasmota-skill/agent.json",
    "briefUrl": "https://openagent3.xyz/skills/tasmota-skill/agent.md"
  }
}
```
## Documentation

### Overview

Automated discovery and control of Tasmota-powered smart home devices (ESP8266/ESP32) on local networks. Includes network scanning, status monitoring, power control, dimming, color control, and inventory management.

### Quick Start

Scan network for Tasmota devices:

python3 scripts/tasmota-discovery.py

Check device status:

python3 scripts/tasmota-control.py <IP> status 0

Control device:

python3 scripts/tasmota-control.py <IP> power on|off|toggle
python3 scripts/tasmota-control.py <IP> brightness 0-100
python3 scripts/tasmota-control.py <IP> color <hex-rgb>

### Network Scan

Run a full network scan to find all Tasmota devices:

python3 scripts/tasmota-discovery.py

The script:

Performs ping sweep to identify live hosts
Scans HTTP (port 80) on live hosts
Detects Tasmota via Server header (e.g., "Tasmota/13.1.0")
Confirms via JSON API (/cm?cmnd=status%200)
Retrieves device names, versions, and hardware

Output includes:

IP address
Device friendly name
Tasmota version
Hardware platform (ESP8266/ESP32)
Response time

### Identification Signals

Tasmota devices are identified by:

Server header: Tasmota/<version> (<hardware>)
JSON API response: /cm?cmnd=status%200 returns structured status
Content keywords: "Tasmota" in HTML

### Power Control

Toggle or set power state:

# Toggle
python3 scripts/tasmota-control.py <IP> power toggle

# On/Off
python3 scripts/tasmota-control.py <IP> power on
python3 scripts/tasmota-control.py <IP> power off

### Brightness (Dimmers)

Set brightness level (0-100):

python3 scripts/tasmota-control.py <IP> brightness 50

Works on devices with Dimmer support (check StatusSTS).

### Color (RGB Lights)

Set RGB color (hex or comma-separated):

# Hex format
python3 scripts/tasmota-control.py <IP> color FF0000  # Red
python3 scripts/tasmota-control.py <IP> color 00FF00  # Green

# RGB comma format
python3 scripts/tasmota-control.py <IP> color 255,0,0

Works on devices with RGB support (AiYaTo-RGBCW, etc.).

### Device Status

Retrieve status information:

# Basic status
python3 scripts/tasmota-control.py <IP> status 0

# All statuses
python3 scripts/tasmota-control.py <IP> status all

Status codes:

0 = Status - Device info, friendly name, power state
1 = StatusPRM - Parameters, uptime, MAC
2 = StatusFWR - Firmware version, hardware
3 = StatusLOG - Log settings
4 = StatusNET - Network config (IP, gateway, WiFi)
5 = StatusMQT - MQTT configuration
9 = StatusTIM - Time, timezone, sunrise/sunset

### Key Status Fields

StatusSTS (Status 0):

POWER - Current state (ON/OFF)
Dimmer - Brightness level (0-100)
Wifi.RSSI - Signal strength
Wifi.SSId - Connected WiFi network

StatusNET:

IPAddress - Device IP
Hostname - mDNS hostname
Mac - MAC address

### Get All Device Status

python3 scripts/tasmota-status.py

Iterates through inventory file and shows power state for all devices.

### Managing Inventory

Devices are tracked in a CSV inventory file. Format:

IP Address,Device Name,Version,Hardware,Response Time (ms)
192.168.1.116,Office Hall Light,13.1.0,ESP8266EX,53

After discovery, save output to inventory file for batch operations.

### Finding Labeled Devices

# Scan and grep for specific device names
python3 scripts/tasmota-discovery.py | grep "Kitchen"
python3 scripts/tasmota-discovery.py | grep "Bulb"

### Checking All Lights

# Get status of all devices
python3 scripts/tasmota-status.py

### Power Cycle a Device

# Off, wait 2s, on
python3 scripts/tasmota-control.py 192.168.1.116 power off
sleep 2
python3 scripts/tasmota-control.py 192.168.1.116 power on

### Command Format

http://<IP>/cm?cmnd=<COMMAND>

### Common Commands

CommandDescriptionPowerToggle powerPower ONTurn onPower OFFTurn offPower TOGGLEToggle stateStatus 0Device statusStatus 4Network statusDimmer <0-100>Set brightnessColor <hex>Set RGB color\`Fade <ONOFF>\`

### Device Not Found

Verify device is on same subnet
Check device has HTTP server enabled (Webserver 2 in config)
Ensure device is powered on and connected to WiFi
Try direct HTTP request: curl http://<IP>/cm?cmnd=Status%200

### Timeout Errors

Device may be power saving (WiFi sleep)
Network latency or packet loss
Check device uptime for recent restarts

### Unknown Power State

Some devices (BLE gateways, sensors) don't have power control. Check capability in StatusSTS.

### Network Configuration

Tasmota devices typically:

Connect on WiFi channel 1-11
Use DHCP (check StatusNET for current IP)
May respond to mDNS (hostname patterns: tasmota-XXXXXX)
Use HTTP on port 80 (standard)

### Best Practices

Scan during network maintenance windows (avoid peak usage)
Cache inventory file to avoid repeated scans
Use device friendly names for easier identification
Set static IPs for critical devices (via Tasmota web UI or DHCP reservations)
Group devices by location/function in inventory comments

### scripts/tasmota-discovery.py

Network scanner that finds live hosts and identifies Tasmota devices via HTTP and JSON API.

### scripts/tasmota-control.py

Device controller supporting power, brightness, color, and status queries via Tasmota JSON API.

### scripts/tasmota-status.py

Bulk status checker that queries all devices in inventory and displays power states.
## Trust
- Source: tencent
- Verification: Indexed source record
- Publisher: wmantly
- Version: 0.1.0
## Source health
- Status: healthy
- Item download looks usable.
- Yavira can redirect you to the upstream package for this item.
- Health scope: item
- Reason: direct_download_ok
- Checked at: 2026-05-01T11:36:56.255Z
- Expires at: 2026-05-08T11:36:56.255Z
- Recommended action: Download for OpenClaw
## Links
- [Detail page](https://openagent3.xyz/skills/tasmota-skill)
- [Send to Agent page](https://openagent3.xyz/skills/tasmota-skill/agent)
- [JSON manifest](https://openagent3.xyz/skills/tasmota-skill/agent.json)
- [Markdown brief](https://openagent3.xyz/skills/tasmota-skill/agent.md)
- [Download page](https://openagent3.xyz/downloads/tasmota-skill)