About home-assistant-awtrix
A skill for managing AWTRIX device files and icons with a bundled Python script, with references covering HTTP endpoints and MQTT/Home Assistant control patterns.
Key features
- 01Deterministic filesystem operations
- 02List, upload, rename, and delete files
- 03Import LaMetric icons
- 04AWTRIX HTTP filesystem reference
- 05MQTT and Home Assistant control guidance
Use cases
- 01Checking device status
- 02Managing device icons
- 03Importing a LaMetric icon
- 04Applying MQTT/Home Assistant control patterns
Install
Copy the command and run it in a terminal.
$
npx skills add https:/ / github.com/ bradsjm/ hassio-addons --skill home-assistant-awtrixAfter installing, type/home-assistant-awtrixin Claude Code to confirm it loaded.
Bundled files
References and scripts installed along with SKILL.md.
references/AWTRIX_HTTP_FILESYSTEM.mdAWTRIX.mdupstream-api.mdscripts/awtrix_fs.pyDetails
From the project READMEAWTRIX
Workflow
- Use the bundled
awtrix_fs.pyscript for deterministic filesystem operations and LaMetric icon imports. - Use absolute device paths (leading
/) to avoid firmware path errors. - Use references for endpoint behavior and MQTT/HA integration patterns.
Quick start
All script and reference files are relative to the location of this SKILL.md file.
python3 scripts/awtrix_fs.py --host <ip> status
python3 scripts/awtrix_fs.py --host <ip> icons list
python3 scripts/awtrix_fs.py --host <ip> icons import-lametric <id>
Tasks
Import a LaMetric icon by ID
- Run:
python3 scripts/awtrix_fs.py --host <ip> icons import-lametric <id> - Read:
references/AWTRIX_HTTP_FILESYSTEM.mdfor endpoint details
List icons on the device
- Run:
python3 ~/.codex/skills/home-assistant-awtrix/scripts/awtrix_fs.py --host <ip> icons list
Upload / rename / delete files
- Upload local file:
... upload ./local.jpg /ICONS/9999.jpg - Rename:
... rename /ICONS/old.gif /ICONS/new.gif - Delete:
... delete /ICONS/bad.gif
Delete ALL icons safely (avoid 404 loop bug)
When deleting many files returned by icons list, avoid command substitution loops that collapse whitespace. Use a line-safe loop so each filename is deleted individually:
python3 scripts/awtrix_fs.py --host <ip> icons list \
| awk '{print $3}' \
| while IFS= read -r f; do
python3 scripts/awtrix_fs.py --host <ip> delete "/ICONS/$f"
done
References
- HTTP endpoints, filesystem API, and LaMetric import details:
references/AWTRIX_HTTP_FILESYSTEM.md - MQTT/HA control patterns (custom apps, notify, settings):
references/AWTRIX.md - Upstream MQTT API reference:
references/upstream-api.md
Comments
Markdown supported