Gladys Assistant 4.82 : Journal d'activité & refonte de l'intégration MQTT 🚀

Salut à tous,

Je sors aujourd’hui ce qui est, pour l’instant, l’une des plus grosses releases de l’année, et il y a une vraie raison à ça.

On est clairement à un tournant dans la façon de développer : les modèles d’IA gagnent en puissance, et les outils pour s’en servir au quotidien deviennent enfin matures. Depuis deux semaines, deux d’entre eux ont changé ma manière de travailler sur Gladys.

Claude Fable 5, le modèle phare d’Anthropic, celui qui a été temporairement restreint aux États-Unis tant ses capacités inquiétaient les autorités. Il m’a permis d’aborder des sujets très techniques qui m’auraient pris des journées entières, et de développer des fonctionnalités majeures comme le journal d’activité que je détaille plus bas.

Les agents IA cloud de Cursor, pilotables depuis mobile. Il y a une dizaine de jours, Cursor a lancé son application iOS : on peut désormais déléguer une tâche de développement à un agent depuis son téléphone, et le laisser travailler en autonomie, sans ordinateur.

Je l’ai testé sur un coup de tête… et ça a tout de suite collé à mon rythme de vie. À la salle, dans les transports, dans le TGV, dans les moments creux de la journée : je lance des tâches, et elles avancent pendant que je fais autre chose.

Le résultat concret ? La refonte complète de l’intégration MQTT, réalisée entièrement par un agent Cursor pendant que j’étais en déplacement.

Je ne vois pas de retour en arrière possible. Avant, c’était surtout mon temps perso qui limitait l’ambition des développements. Aujourd’hui, je délègue des sujets complexes à des agents qui tournent en autonomie, itèrent jusqu’à ce que le résultat soit à la hauteur, et continuent même sans mon ordinateur sous la main.

Et ce n’est que le début : je peux déjà en lancer une centaine en parallèle, chacun sur une fonctionnalité différente. C’est un peu comme diriger une équipe de 100 développeurs.

Mon intuition : les six prochains mois pourraient valoir plusieurs années de développement classique.

Je vous fais une démo de Cursor iOS sur YouTube ici.

Voici ce qui en est sorti en quelques jours seulement :


:house: Nouvelle page Activité : l’historique de votre maison en direct

La fonctionnalité phare de cette release : un nouvel onglet Activité qui affiche une timeline visuelle de tout ce qui se passe chez vous : ouvertures de porte, détections de mouvement, allumages/extinctions, valeurs de capteurs, etc.

Ce qui rend cette page utile au quotidien :

  • Timeline groupée par jour (« Aujourd’hui », « Hier », puis dates complètes) avec icônes colorées par famille d’événement

  • Regroupement des rafales : les états consécutifs d’un même capteur sont fusionnés en une seule ligne avec un badge ×N, extensible pour voir chaque occurrence horodatée. Indispensable pour les installations avec 100–200 appareils

  • Filtres par famille (Ouvertures, Mouvement & présence, Boutons, Lumières, Climat, Sécurité, Énergie…), sélecteur de pièce et recherche d’appareil

  • Temps réel avec pastille flottante « N nouveaux événements » quand vous avez scrollé vers le bas

  • Scroll infini avec pagination


:satellite_antenna: MQTT : refonte complète de l’expérience des appareils virtuels

L’intégration MQTT bénéficie d’une refonte UX majeure, inspirée des retours de la communauté (forum) :

  • Liste compacte des appareils groupés par pièce
  • Catalogue de features avec aperçu dashboard réaliste et recherche
  • Auto-génération des ID externes (mqtt:{slug}-{4chars}), toujours modifiable
  • Bouton copier pour les identifiants/URL MQTT

:robot: IA : choix du modèle et contexte amélioré

Je continue de pousser l’agent IA dans Gladys, parce que je suis convaincu que c’est l’avenir de la domotique : contrôler sa maison à la voix ou par écrit, exécuter n’importe quelle action, interroger ses capteurs.

L’objectif, c’est un agent fiable au quotidien. Pour y arriver, j’ai besoin de vous.

Cette release ajoute un sélecteur de modèle IA dans le chat. Vous pouvez tester les différents modèles Scaleway (Mistral, Llama, Qwen, Gemma…) et comparer leurs réponses dans des situations réelles chez vous. Un indicateur de coût (€, €€, €€€) vous aide à vous repérer, mais il reste indicatif pour l’instant : Gladys Assistant a rejoint le programme Startup de Scaleway et nous avons reçu 1 000 € de crédits pour mener ces expériences sereinement.

Une fois le meilleur modèle identifié, je ferai le calcul pour l’intégrer durablement dans Gladys Plus, de façon rentable pour le projet.

En attendant, testez et partagez vos retours sur le forum !

Autres améliorations côté IA :

  • Contexte enrichi : les appels d’outils et messages non pertinents sont exclus du contexte pour de meilleures réponses
  • Correction du schéma d’action « allumer/éteindre un appareil »
  • Fichier de debug enrichi (50 derniers messages)

:high_voltage: Tuya : support des compteurs intelligents (Smart Meter)

  • Prise en charge des compteurs intelligents Tuya en cloud et en local
  • Lecture via l’API Thing Model shadow pour les appareils sans spécifications legacy
  • Mesures : puissance totale, énergie active/réactive, tension, courant
  • Noms d’affichage propres (les typos des codes Tuya ne remontent plus dans l’UI)
  • Infrastructure de tests par fixtures pour industrialiser l’ajout de nouveaux appareils Tuya

:mobile_phone: Interface & tableau de bord

Widget Jauge

Améliorations suite aux retours de @GBoulvin sur ce sujet.

  • Nom personnalisable pour distinguer plusieurs jauges du même appareil (ex. deux cuves d’eau MQTT)
  • Correction du scroll bloqué sur mobile quand on pose le doigt sur une jauge

Améliorations mobile générales

Merci à @Will_71 pour son travail ici.

  • Mise en page responsive des boutons d’action et en-têtes sur de nombreuses pages (intégrations, paramètres…)
  • Boutons empilés sur mobile, meilleur wrapping des groupes de boutons

:wrench: Intégrations & correctifs

Intégration Changement
Z-Wave JS Correction de l’intégration après mise à jour de ZWaveJS
Matter Mise à jour de matter.js 0.17.3 → 0.17.4 + README d’intégration
Climatisation Correction : le mode climatisation s’affichait comme mode ventilateur depuis v4.79.0
iOS Le mode sombre n’est plus écrasé au lancement de l’app
Signal quality Icônes SVG de qualité de signal à nouveau visibles en développement
Scènes Correction : les messages contenant des caractères spéciaux ne provoquent plus de bugs d’affichage

:hammer_and_wrench: Technique (pour les contributeurs)

  • Migration du front de preact-cli (webpack) vers Vite : démarrage dev plus rapide, HMR amélioré, build modernisé. Aucun changement visible pour l’utilisateur final, mais une base technique plus saine pour la suite. Migration effectué par Fable 5, en autonomie.

  • Nouveau champ supported_options sur les DeviceFeature : les intégrations peuvent désormais déclarer les modes/valeurs supportées par une feature (ex. modes d’aspirateur)

  • Documentation développeur enrichie (AGENTS.md)


:folded_hands: Remerciements

Merci à @Terdious, @Will_71 , @Sescandell et @bertrandda pour leurs contributions, ainsi qu’à la communauté pour les retours sur MQTT, le journal d’activité et l’UX mobile.

Un mot aussi pour les abonnés Gladys Plus : c’est grâce à vous que je peux payer les outils IA qui rendent tout ça possible, et leur coût ne cesse d’augmenter. Avec l’accélération du rythme de développement, je vais probablement devoir monter le budget IA du projet dans les prochains mois.

Si vous voulez voir Gladys avancer encore plus vite, Gladys Plus est le meilleur levier. En plus de soutenir le projet, vous débloquez les fonctionnalités avancées : sauvegardes, agent IA, accès à distance, assistants vocaux, intégration MCP, Enedis, et bien d’autres.

Merci à tous, et bonne mise à jour !

Le Changelog complet est ici

Un grand merci à tous pour cette nouvelle version pleines de nouveautées et qui annonce que du bon pour la suite :smiley:.

Pour le moment j’ai juste vu un problème d’affichage ici :

Et si je reduis la fenêtre je ne peux pas voir tous les selecteurs :

Merci :slight_smile:

Salut @prohand, la liste est scrollable horizontalement donc c’est un comportement normal :slight_smile:

Les barres de défilement sont masquées car ce n’est pas très esthétique ^^

Salut,

A oui merci, sur mobile c’est ok par contre sur PC, impossible de faire scroller :sweat_smile:

En effet pas top à l’usage, mais pour dépanner, si tu vises à sélectionner le texte (clique tout a gauche, maintien et va vers la droite, ca devrait scroller :sweat_smile: :wink:

Super boulot en effet, merci. @tous les contributeurs.

Je suis très content d’avoir choisi gladys pour débuter, car je m’aperçois que ça évolue très rapidement et ça me rassure.

J’ai hâte d’ailleurs de pouvoir participer à l’évolution et je suis en train d’apprendre comment tout ceci est architecturé, mais ce n’est pas si simple pour un débutant comme moi.

Sinon j’ai le même pb concernant les boutons du menu activités qui n’apparaissent pas en totalité et je ne peux pas scroller sur ordinateur (par contre ok sur mobile)

autre chose : pourquoi gladys s’est mis à jour tout seul sans que je le demande ?

Merci !! Oui ça avance vite sur Gladys !

Ok intéressant, moi je peux scroller horizontalement, mais je suis sur Mac et avec un touchpad, je ne sais pas comment ça fonctionne sur Windows en général ?

Gladys se met à jour automatiquement, il y a une vérification toutes les 24h environ :slight_smile:

en fait, c’est pas simple si tu n’as pas un pad comme sur un portable. Sinon, il faut faire comme @Terdious l’a indiqué en maintenant et en utilisant les flèches du clavier.

Je confirme c’est plus rapide, j’avais pas encore testé mais oui j’ai été surpris quand j’ai lancé le build du front

Excellent tout ça ! Quel plaisir de voir autant d’améliorations en si peu de temps !

Merci !

Juste un petit retour sur la présentation. Il y a un espacement bizarre qui apparaît dans la page des devices mqtt:

Android, Chrome, local et GladysPlus

effectivement ça marche avec les flèches droite et gauche sur ordi windows, merci !

ah ok, et il ne faut pas redémarrer le serveur ?

Non, pas la peine.
Quand tu veux mettre à jour un container Docker, il faut en premier l’arrêter, ensuite le supprimer, télécharger la nouvelle image et recréer le container. Donc techniquement, il a déjà redémarré car c’est un nouveau container !
Ici c’est Watchtower qui fait le job pour gérer cela automatiquement!

ok, donc c’est pour cela que gladys a planté quelques instant hier, car il était mis à jour

Pendant la mise à jour, tu n’as plus accès, donc cela me parait normal.