La plateforme domotique open-source Home Assistant a su conquérir un large public grâce à sa flexibilité et à sa capacité à s’interfacer avec des milliers d’appareils. Si son interface utilisateur a grandement simplifié sa prise en main, la véritable puissance de cet outil se révèle dans la personnalisation de ses fichiers de configuration. Écrits en langage YAML, ces fichiers peuvent rapidement devenir complexes. C’est ici qu’intervient Visual Studio Code, un éditeur de code moderne et puissant qui, couplé aux bonnes extensions, transforme une tâche potentiellement ardue en une expérience fluide et contrôlée, réduisant drastiquement le risque d’erreurs.
Installer Visual Studio Code sous Home Assistant

L’intégration de Visual Studio Code au sein de Home Assistant est la première étape pour professionnaliser l’édition des configurations. Pour les utilisateurs de Home Assistant OS ou d’une installation Supervised, le processus est remarquablement simple et s’effectue via la boutique de modules complémentaires, aussi appelée « Add-on Store ».
Accéder à la boutique des modules complémentaires
L’installation se fait directement depuis l’interface web de votre Home Assistant. Il n’est pas nécessaire de télécharger de logiciel externe sur votre ordinateur. La procédure est la suivante :
- Rendez-vous dans la section Paramètres de votre interface Home Assistant.
- Cliquez sur Modules complémentaires pour accéder à la gestion des add-ons.
- En bas à droite de l’écran, sélectionnez le bouton Boutique des modules complémentaires pour afficher la liste des applications disponibles.
Rechercher et installer le module
Une fois dans la boutique, utilisez la barre de recherche pour trouver le module officiel. Tapez simplement « Visual Studio Code » et le module devrait apparaître. Cliquez dessus pour ouvrir sa page dédiée. Vous y trouverez des informations sur le développeur, la version et un bouton Installer. Le téléchargement et l’installation peuvent prendre quelques minutes en fonction de la puissance de votre matériel, qu’il s’agisse d’un Raspberry Pi ou d’un serveur plus conséquent.
Configuration et premier lancement
Après l’installation, il est recommandé d’activer les options Démarrer au démarrage et Chien de garde pour que l’éditeur soit toujours disponible et redémarre automatiquement en cas de problème. Activez également l’option Afficher dans la barre latérale pour un accès rapide. Cliquez ensuite sur Démarrer. Une fois le module lancé, un nouvel onglet « Visual Studio Code » apparaîtra dans votre menu de gauche, vous donnant un accès direct à un environnement de développement complet au sein même de votre navigateur. Vous pouvez réaliser toutes ces opérations depuis un simple ordinateur portable connecté à votre réseau local.
-
Acer Aspire 1 A115-32-C3AK Ordinateur Portable 15,6'' Full HD (Intel Celeron N4500, RAM 4 Go, 128 Go eMMC, Intel UHD Graphics, Windows 11), Clavier AZERTY, Gris, Microsoft 365 Personnel 12 Mois Inclus
-
Lenovo IdeaPad Slim 3 Chrome 14M868 - Ordinateur Portable 14'' FHD (MediaTek Kompanio 520, RAM 4Go, SSD 128Go, Arm Mali-G52 2EE MC2 GPU, Chrome OS) Clavier AZERTY Français - Gris
-
Lenovo IdeaPad Slim 3 16IRH10 - Ordinateur Portable 16'' WUXGA (Intel Core i7-13620H, RAM 16Go, SSD 1To, Intel UHD Graphique, Windows 11 Home) Clavier AZERTY Français - Bleu
Une fois Visual Studio Code installé et accessible, une configuration minimale est nécessaire pour le lier efficacement à votre instance Home Assistant et tirer parti de ses fonctionnalités avancées.
Configurer Home Assistant pour l’édition via Visual Studio Code
L’installation seule ne suffit pas. Pour que Visual Studio Code devienne un véritable allié, il faut le configurer pour qu’il comprenne la structure et la syntaxe spécifiques à Home Assistant. Cette étape garantit l’accès à des fonctionnalités comme l’auto-complétion des entités ou la validation de la syntaxe YAML.
Configuration pour les utilisateurs de l’add-on
Si vous avez installé Visual Studio Code via la boutique de modules complémentaires, la bonne nouvelle est que la configuration de base est quasi inexistante. L’add-on est préconfiguré pour accéder directement au dossier /config de Home Assistant. Dès le premier lancement, l’explorateur de fichiers sur la gauche de l’interface affichera l’intégralité de votre arborescence de configuration, avec en tête le fameux fichier configuration.yaml. Vous êtes prêt à travailler immédiatement.
Alternative pour les utilisateurs de Docker
Pour ceux qui utilisent une installation de type Home Assistant Container (dans Docker, sans le superviseur), l’approche est différente. Vous ne disposez pas de la boutique de modules. Il vous faudra déployer un conteneur Docker distinct pour Visual Studio Code (via l’image coder/code-server). La configuration cruciale consiste alors à monter le dossier de configuration de votre Home Assistant en tant que volume dans le conteneur de VS Code. Cela se définit généralement dans un fichier docker-compose.yml en ajoutant une ligne dans la section volumes, par exemple : – /chemin/vers/votre/config/homeassistant:/config. Cette manipulation permet à l’éditeur d’accéder aux fichiers et de les modifier.
Que vous utilisiez l’add-on ou une configuration Docker, la véritable puissance de l’éditeur se débloque grâce à l’ajout d’extensions spécialisées.
Utiliser les extensions nécessaires dans Visual Studio Code
Visual Studio Code tire sa force de son écosystème d’extensions. Pour Home Assistant, une extension est particulièrement indispensable, transformant un simple éditeur de texte en un environnement de développement intégré (IDE) dédié à la domotique.
L’incontournable : Home Assistant Config Helper
L’extension Home Assistant Config Helper est le complément essentiel pour tout utilisateur. Elle se connecte à votre instance Home Assistant pour enrichir l’expérience d’édition. Ses avantages sont multiples :
- Auto-complétion : Elle suggère automatiquement les noms des entités (par exemple, light.salon), des services et des autres éléments de configuration, réduisant ainsi les fautes de frappe.
- Validation de la syntaxe : Elle surligne les erreurs de syntaxe YAML en temps réel et peut valider la configuration par rapport aux schémas de Home Assistant.
- Informations contextuelles : En survolant une entité avec la souris, elle peut afficher son état actuel.
Pour l’installer, rendez-vous dans l’onglet des extensions (l’icône des quatre carrés dans la barre latérale de VS Code), recherchez « Home Assistant Config Helper » et cliquez sur Installer.
Autres extensions utiles
Bien que l’extension principale soit suffisante pour commencer, d’autres peuvent améliorer votre flux de travail. L’extension YAML par Red Hat est souvent recommandée pour une meilleure gestion générale des fichiers YAML, offrant une validation de la syntaxe encore plus poussée. Pour ceux qui gèrent des secrets, des extensions de gestion de fichiers .env peuvent également s’avérer utiles.
Avec les bons outils en main, il est temps de s’attaquer à la structure même des fichiers pour maintenir une configuration propre et évolutive.
Organiser et personnaliser les fichiers de configuration YAML
À mesure que votre système domotique s’enrichit, le fichier principal configuration.yaml peut rapidement devenir un monolithe de plusieurs milliers de lignes, difficile à lire et à maintenir. La clé d’une gestion saine est de scinder la configuration en plusieurs fichiers logiques.
Le principe du ` !include`
Home Assistant propose des directives spéciales pour externaliser des pans de la configuration. La plus courante est !include. Elle permet de dire à Home Assistant : « pour cette section, va lire le contenu du fichier spécifié ». Par exemple, au lieu de lister toutes vos automatisations dans le fichier principal, vous pouvez simplement y inscrire automation: !include automations.yaml et placer toutes vos règles dans un fichier séparé nommé automations.yaml.
Structurer ses dossiers pour plus de clarté
Pour aller plus loin, vous pouvez utiliser des directives comme !include_dir_merge_list ou !include_dir_merge_named pour charger tous les fichiers d’un dossier. Une pratique courante consiste à créer des répertoires pour chaque type d’intégration (capteurs, scripts, automatisations, etc.). Cela rend la recherche d’une configuration spécifique beaucoup plus rapide. Une bonne organisation est la pierre angulaire d’un système robuste et facile à déboguer.
| Approche monolithique (déconseillée) | Approche structurée (recommandée) |
|---|---|
| configuration.yaml (tout est dedans) | configuration.yaml (contient les !include) |
| automations.yaml (ou un dossier /automations) | |
| scripts.yaml (ou un dossier /scripts) | |
| sensors.yaml (ou un dossier /sensors) |
Si l’édition via l’interface web est pratique, certains utilisateurs avancés préfèrent des méthodes d’accès plus directes, notamment lorsqu’ils ne sont pas sur leur réseau local.
Accéder à la configuration depuis l’extérieur via SSH

L’accès via l’interface web de Home Assistant est sécurisé et simple, mais il peut être utile, voire nécessaire, d’accéder directement aux fichiers de configuration via un terminal. Le protocole SSH (Secure Shell) permet une connexion sécurisée à la ligne de commande de votre système Home Assistant, offrant un contrôle total sur les fichiers.
Installation de l’add-on Terminal & SSH
Tout comme pour Visual Studio Code, Home Assistant OS propose un module complémentaire officiel nommé Terminal & SSH. Son installation suit le même processus via la boutique des modules. Une fois installé et configuré, il vous permet d’ouvrir un terminal directement dans votre navigateur ou de vous connecter à distance avec un client SSH comme PuTTY sur Windows ou le terminal natif sur macOS et Linux.
Configurer un accès sécurisé
La configuration du module est cruciale pour la sécurité. Il est fortement déconseillé d’autoriser l’accès par mot de passe depuis l’extérieur de votre réseau. La méthode la plus sûre est d’utiliser une authentification par clé publique. Cela implique de générer une paire de clés (une privée, que vous gardez secrète sur votre machine, et une publique, que vous copiez dans la configuration de l’add-on). Seuls les ordinateurs possédant la clé privée correspondante pourront alors se connecter, rendant les attaques par force brute inefficaces. Une fois connecté en SSH, vous pouvez naviguer dans le dossier /config et même éditer les fichiers avec des éditeurs en ligne de commande comme nano ou vim, bien que cela soit moins confortable que VS Code. Un tel accès est parfait pour faire une modification rapide depuis une tablette lorsque vous n’êtes pas à la maison.
-
Samsung Galaxy Tab A9 - Tablet - Android - 64 GB - 22,05 cm (8.7")
-
Ainmel Tablette 10 Pouces, Android 14 Tablette Processeur Octa-Core, 8GB+64GB(TF 1TB), 1280 x 800 HD IPS Wi-FI 6 /Widevine L1/5000mAh/Double Caméra/Identification Faciale Tablettes PC (Noir)
-
OYEFIT Tablette Android 15 10 Pouces, 18Go+128 Go(2To Extensible) Tablette Tactile avec Port USB, 5G WiFi 6 Tablettes, IPS HD 1280 x 800, Radio FM, 5000 mAh, GPS, Bluetooth
Maîtriser l’accès aux fichiers est une chose, mais optimiser la manière dont on les édite au quotidien en est une autre, et c’est là que VS Code révèle ses dernières astuces.
Optimiser l’édition avec Visual Studio Code et Home Assistant
Au-delà de l’édition de base, Visual Studio Code offre des outils avancés pour accélérer le développement, assurer la qualité du code et suivre les modifications. L’adopter pleinement, c’est adopter des pratiques de développement logiciel professionnelles pour sa domotique.
Le contrôle de version avec Git
L’une des fonctionnalités les plus puissantes de VS Code est son intégration native avec Git, le système de contrôle de version le plus populaire. En initialisant un dépôt Git dans votre dossier de configuration, vous pouvez :
- Suivre chaque modification : Chaque sauvegarde peut être « commitée » avec un message descriptif.
- Revenir en arrière : Une mise à jour de Home Assistant a cassé une automatisation ? Revenez facilement à une version précédente de votre configuration qui fonctionnait.
- Travailler avec des branches : Testez de nouvelles fonctionnalités complexes sur une branche séparée sans affecter votre configuration principale.
- Sauvegarder à distance : Poussez votre configuration sur un dépôt distant comme GitHub ou GitLab pour une sauvegarde sécurisée et accessible de n’importe où.
Utiliser le terminal intégré
Visual Studio Code inclut un terminal directement dans son interface. Depuis l’add-on Home Assistant, ce terminal vous donne un accès direct à la ligne de commande du conteneur. C’est extrêmement pratique pour lancer des commandes de vérification ou de redémarrage sans quitter l’éditeur.
| Commande utile | Description |
|---|---|
| ha core check | Vérifie la validité de la configuration Home Assistant. |
| ha core restart | Redémarre le service principal de Home Assistant. |
| ha core logs | Affiche les journaux pour le débogage. |
Les snippets pour gagner du temps
Les snippets sont des modèles de code réutilisables que vous pouvez insérer rapidement. Vous pouvez créer vos propres snippets dans VS Code pour des structures YAML que vous utilisez fréquemment, comme le squelette d’une nouvelle automatisation ou la configuration d’un capteur MQTT. Cela permet de réduire les tâches répétitives et de garantir une structure de code cohérente. Passer des heures à peaufiner sa configuration nécessite une bonne installation, notamment une chaise de bureau de qualité pour préserver son dos.
-
SONGMICS Fauteuil de Bureau, Chaise Gaming, RÉglable, Repose-pieds TÉlescopique, MÉcanisme À Bascule, Appui-tÊte, Support Lombaire, Charge 150 kg, Noir d'Encre et Gris Tourterelle OBG073B03
-
SONGMICS Fauteuil de Bureau, Chaise Ergonomique, pivotant, réglable en Hauteur, mécanisme d’Inclinaison, siège et Dossier en Toile Respirante, Bureau, Charge 120 kg, Noir OBN22BK
-
Vigosit Chaise de bureau ergonomique avec support lombaire et cervical - Pivotante à 360 ° - Charge maximale : 120 kg - Pour le bureau à domicile et le bureau - Noir
L’adoption de Visual Studio Code pour gérer la configuration de Home Assistant marque un tournant dans la manière d’aborder sa domotique. En passant d’un simple éditeur à un environnement de développement intégré, l’utilisateur gagne en efficacité, en sécurité et en sérénité. L’installation via l’add-on, l’enrichissement par les extensions, l’organisation des fichiers et l’utilisation d’outils professionnels comme Git transforment la personnalisation de Home Assistant en une tâche structurée et maîtrisée. C’est la garantie de pouvoir construire un système domotique complexe et fiable, capable d’évoluer au fil du temps sans devenir une source de confusion.