Shelly
Athena talks straight to a Shelly Gen2 or Gen3 device's own local JSON-RPC API (POST
/rpc) rather than routing through MQTT, even though Shelly's own MQTT+HA-discovery firmware
setting would already work via MQTT auto-discovery.
Gen1 devices (an older HTTP+CoAP protocol, no JSON-RPC) aren't supported.
Discovery
Shelly devices are found by the same background mDNS scan that finds ESPHome devices - Shelly gets its own "Configured"/"Discovered" tabs at Devices & Services > Shelly, mirroring ESPHome's layout exactly. "Do not show again", Delete, and the new-device notification all work identically to ESPHome discoveries - see ESPHome and Notifications.
Connecting
Password-protected devices use Shelly's own digest-auth scheme over the RPC channel - connecting probes the device's unauthenticated status endpoint first to learn whether a password is even needed, so you're only prompted when one actually is. The Configured tab's own header menu also has "+ Add device", for typing a device's name, address, and port in by hand instead of connecting from a Discovered row - see Devices & Services.
What you get
Live entity updates are polled every 5 seconds. A power-metering switch becomes its own controllable entity plus separate read-only sensors for power draw, voltage, and current on models that report them - what makes energy-monitoring Dashboard and History graphs possible. Inputs, temperature, humidity, covers, and lights are mapped too. The device-detail page mirrors the native ESPHome one - entity list with live controls, a Location card, and an Activity feed.
Scripts
Gen2/Gen3 devices get their own Scripts card on the device-detail page, listing whatever's actually saved on the device right now (Athena never stores a script's own code or keeps it cached - every list/save/run here is a live call to the device's own JSON-RPC API). + New script (or clicking an existing one) opens a CodeMirror-based JavaScript editor; Save creates the script on first save and uploads its code from then on, Run evaluates the current editor contents once inside the script's already-running context without needing to save first, useful for a quick check. Each row in the list also has its own enabled toggle (auto-start on device boot) and a Start/Stop button (running right now or not, independent of that toggle), plus Delete.
The editor's own Script Library section is unrelated to any one device - a personal scratch space of code snippets saved to Athena's own database (survives a browser or machine change, unlike the plain-localStorage version this replaced), for reusing or switching between snippets across devices. Saving there is entirely separate from saving to the device - nothing in the library is running anywhere until you load it into the editor and hit Save. The library also offers Copy/Paste and file Export/Import for the current editor contents.
A Run Shelly Script automation action starts or stops a chosen device's chosen script - the action's own picker fetches the live script list from the device the same way the Scripts card does.