What's Changed
- fix(message): isolate messaging service failures in sendToUser by @Pierre-Gilles in #2675
- fix(rtsp-camera): log concise camera poll failures by @Pierre-Gilles in #2676
- docs: require agent PRs to be created as ready for review by @Pierre-Gilles in #2685
- chore(matter): update matter.js to 0.17.6 by @Pierre-Gilles in #2687
- Add CO2 sensor support to Matter integration by @Pierre-Gilles in #2686
- Recalculate energy costs after each Enedis sync by @Pierre-Gilles in #2684
- AI chat: control light brightness, color and color temperature by @Pierre-Gilles in #2688
- ci(pr): push branch Docker image to GitHub registry and comment on PR by @Pierre-Gilles in #2692
- Parallelize service dependency installs with concurrency of 4 by @Pierre-Gilles in #2691
- ci(pr): add
/build-arm64comment command for on-demand ARM64 images by @Pierre-Gilles in #2694 - feat(ai-chat): two-stage tool routing to improve scene creation quality by @Pierre-Gilles in #2696
- feat(ai-chat): increase AI debug context history to 200 messages by @Pierre-Gilles in #2700
- fix(mqtt): ignore empty custom topic to avoid matching all MQTT messages by @Pierre-Gilles in #2703
- fix(mqtt): clear manually-stopped status when saving MQTT configuration by @Pierre-Gilles in #2702
- feat(ai-chat): answer energy consumption (kWh) and cost questions over date ranges by @Pierre-Gilles in #2701
- Matter: Fix "Cannot mix BigInt and other types" crash on electrical attributes by @Pierre-Gilles in #2704
- Matter: Add air conditioner mode management (Thermostat SystemMode) by @Pierre-Gilles in #2690
- Fix chart formatters to handle undefined values from ApexCharts by @Pierre-Gilles in #2706
- Improve CalDAV sync: handle deleted events and defer ctag updates by @Pierre-Gilles in #2712
- External integrations (RFC phase 1): Docker supervisor, host API, integration WebSocket, decentralized store and generic frontend by @Pierre-Gilles in #2665
- fix(zigbee2mqtt): keep IEEE address and Z2M link after saving a device by @William-De71 in #2681
- Add implementation plan for external integrations (RFC) by @Pierre-Gilles in #2659
- Dashboard: clarify that tablet mode applies to the current browser only by @Pierre-Gilles in #2711
- Fix CSS modules HMR in dev mode by @Pierre-Gilles in #2713
- Add ability to disable Telegram integration by @Pierre-Gilles in #2715
- Use live device feature units in chart boxes by @Pierre-Gilles in #2716
- External integration store: add a catalog refresh control and lower the cache TTL to 30 minutes by @Pierre-Gilles in #2714
- Preserve integration catalog filters in URL for back navigation by @Pierre-Gilles in #2717
- Render the Markdown of the AI answers in the chat by @Pierre-Gilles in #2718
- Zigbee2MQTT: add support for Tuya/Moes TS0601 garage door opener by @Pierre-Gilles in #2721
- Translate the external integrations spec to English by @Pierre-Gilles in #2720
- Update AI chat models: remove outdated models, add glm-5.2 by @Pierre-Gilles in #2723
- Force tool calls for device query/control AI intents by @Pierre-Gilles in #2724
- AI chat: retry once when the final answer is raw data instead of natural language by @Pierre-Gilles in #2726
Full Changelog: v4.83.0...v4.84.0