lfpoulain/Cornelius
lfpoulain/Cornelius has 444 GitHub stars and 48 forks. GitHot measured +7 stars in 24 hours. Last checked 2026-11-09 12:48 UTC. Last push 2026-11-02.
Cornelius, le cadre/miroir intelligent : il vous reconnaît, vous écoute et répond en français. Assistant vocal, reconnaissance faciale en local, Home Assistant, météo, transports et beaucoup plus !
Measured star growth
- in 24h
- +7
- in 7 days
- Update delayed
- in 15 days
- Update delayed
- in 1 month
- Update delayed
Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.
README.md
OriginalUn miroir qui vous reconnaît, vous écoute et vous répond, en français.
Fonctionnalités · Installer · Premiers pas · Documentation · Confidentialité · Licence
Cornelius transforme un écran, tel quel ou glissé derrière un miroir sans tain, en assistant pour toute la famille. Il reconnaît qui se présente devant lui, ouvre la conversation quand on le regarde ou qu’on l’appelle par son nom, et répond à la voix avec des cartes qui s’affichent sur le miroir : la météo, le prochain bus, la lumière du salon, un souvenir, une image…
Par défaut, la caméra, les visages et l’écoute du mot d’appel restent sur le serveur Cornelius. En option, la caméra du navigateur envoie ses images au serveur sur le réseau local chiffré, pour la même analyse locale. Seule la conversation passe par OpenAI, et seulement quand elle est ouverte.
✨ Ce que fait Cornelius
🗣️ Il converse à la voixEn français, avec une voix naturelle, et affiche ses réponses sous forme de cartes sur le miroir. |
👋 Il sait quand on lui parleIl ouvre la conversation quand une personne se présente, le regarde ou dit « Cornelius ». Le modèle du mot d’appel est fourni et tourne en local. |
🙂 Il reconnaît le foyerLes visages sont reconnus sur l’ordinateur lui-même, avec un mode vie privée quand plusieurs personnes sont devant le miroir. |
🌤️ Il informe d’un coup d’œilL’heure, la météo et les prochains passages de bus ou de RER, à la demande ou affichés en permanence. |
🏠 Il commande la maisonAvec Home Assistant ou des commandes HTTP, et il confie les tâches longues à des agents Hermes. |
🧠 Il se souvientDes souvenirs propres à chaque personne, que chacun peut consulter, corriger ou effacer. |
👁️ Il voit et il dessineEn option, il décrit ce que montre la caméra et crée des images, sur l’ordinateur ou avec OpenAI, puis les envoie par e-mail sur le téléphone de la famille. |
🧩 Il s’enrichitDes modules ajoutent de nouvelles informations et de nouveaux outils vocaux. Les modules externes vivent dans cornelius-modules et se mettent à jour à part. |
🖼️ Il expose de l’art au reposQuand personne n’est là, le miroir affiche des peintures du domaine public ou vos photos ; l’orbe les efface à votre retour. |
📡 Il répond dans les autres piècesDes satellites audio (micro et haut-parleur) répondent à « Cornelius » ailleurs dans la maison. |
🧰 Ce qu’il faut
| 💻 Ordinateur | x86-64 ou ARM64 sous Linux (Debian, Ubuntu, Arch ou une dérivée), Windows 10 et 11, ou un Raspberry Pi 4 ou 5 sous Raspberry Pi OS 64 bits (sans vision locale ni images locales) |
| 🎥 Matériel | une webcam, un micro, des haut-parleurs et un écran (seul, ou derrière un miroir sans tain) |
| 🛠️ Logiciels | Node.js 24 (24.2 ou plus récent), Python 3.12 et Git |
| 🔑 Clé OpenAI | d’un compte payant : sans elle, Cornelius ne peut pas parler |
| ➕ En option | une carte graphique pour la vision et les images, un jeton Météo Concept pour la météo, un jeton PRIM pour les transports d’Île-de-France, des satellites audio (Waveshare ESP32-S3-AUDIO-Board) pour parler à Cornelius depuis d’autres pièces |
🚀 Installer
🐧 Linux
Récupérez les outils de base et le code (sur Arch : sudo pacman -S git curl unzip) :
sudo apt install git curl unzip
git clone https://github.com/lfpoulain/Cornelius.git
cd Cornelius
node --version
[!TIP] Si la dernière commande n’affiche pas
v24.2ou plus récent dans la version 24 (cas d’Ubuntu et Debian), installez fnm, un gestionnaire de versions de Node.js sans droits administrateur, puis ouvrez un nouveau terminal et revenez dans le dossier :curl -fsSL https://fnm.vercel.app/install | bash
Lancez ensuite l’installation. Elle installe Node.js 24 avec fnm, les dépendances, la perception et ses modèles, puis crée deux services qui démarrent avec la session :
scripts/install-linux.sh --system-deps --systemd
Sans l’option --systemd, démarrez ensuite avec scripts/start.sh. Toutes les options : Installer sous Linux.
🪟 Windows
Il n’y a pas d’installateur : l’installation se fait en une dizaine de commandes PowerShell. Suivez Installer sous Windows.
🏠 Home Assistant
Avec Home Assistant OS, Cornelius peut tourner comme add-on sur la box, le miroir s’affichant sur un autre appareil. Ajoutez le dépôt cornelius-ha à la boutique de Home Assistant, puis suivez Installer dans Home Assistant.
🔑 Après l’installation
Ouvrez l’administration et collez votre clé OpenAI dans Mise en route → Clés et jetons : elle compte tout de suite.
[!IMPORTANT] Le mot de passe de départ de l’administration est
cornelius. Changez-le tout de suite dans Mise en route → Mot de passe administrateur.
▶️ Lancer
Avec les services systemd sous Linux, Cornelius démarre tout seul. Sinon, utilisez les scripts :
| Action | Linux | Windows (PowerShell) |
|---|---|---|
| Démarrer | scripts/start.sh |
powershell -ExecutionPolicy Bypass -File scripts\start.ps1 |
| Arrêter | scripts/stop.sh |
powershell -ExecutionPolicy Bypass -File scripts\stop.ps1 |
| Redémarrer | scripts/restart.sh |
powershell -ExecutionPolicy Bypass -File scripts\restart.ps1 |
| Avec systemd | systemctl --user restart cornelius cornelius-perception |
start compile l’interface si besoin, puis lance le serveur et la perception (le programme local qui lit la caméra et écoute le mot d’appel).
Ouvrez ensuite, dans un navigateur de la même machine :
| Adresse | ||
|---|---|---|
| 🪞 Le miroir | http://127.0.0.1:3000/ | Touchez Activer la voix, puis passez en plein écran avec F11. |
| ⚙️ L’administration | http://127.0.0.1:3000/admin | La rubrique Mise en route indique ce qu’il reste à faire. |
📱 Depuis un téléphone ou un autre ordinateur de la maison, utilisez https://<adresse de l’ordinateur>:3443/ : voir Accès depuis le réseau local.
👣 Premiers pas
- Connectez-vous à l’administration et lisez la rubrique Mise en route.
- Choisissez la caméra dans Caméra et reconnaissance.
- Cliquez sur Activer et ouvrir le miroir et acceptez l’accès au micro.
- Ajoutez les personnes du foyer et mémorisez leur visage dans Le foyer et les visages.
- Choisissez ce qui ouvre la conversation dans Quand il écoute, puis dites « Cornelius » !
Le pas à pas complet est dans Premier démarrage.
📚 Documentation
Toute la documentation part de l’index.
| Installer | Linux · Raspberry Pi · Windows · Home Assistant · Carte graphique |
| Utiliser | Le miroir · L’administration · Dépannage |
| Fonctionnalités | Ouverture et présence · Mot d’appel · Mémoire · Home Assistant · Agents Hermes · Vision locale · Images · E-mail |
| Modules | Les utiliser · Le contrat · En créer un (dépôt cornelius-modules) |
| Développer | Développement · Architecture · Contribuer · Historique |
| Référence | Configuration · Confidentialité · Licences · Glossaire |
🔒 Confidentialité
- 🎥 Les images et les signatures de visage sont analysées sur le serveur Cornelius. Avec la caméra du navigateur, les images traversent le réseau local chiffré sans être enregistrées.
- 🎙️ Le mot « Cornelius » est reconnu en local : en veille, le son ne quitte pas l’ordinateur.
- 💬 La voix et le texte partent chez OpenAI seulement pendant une conversation. Cornelius n’enregistre ni image, ni son, ni transcription sur le disque.
[!CAUTION] Le dossier
data/(base de données, signatures des visages, souvenirs) et le fichier.envne doivent jamais être publiés.
Le détail est dans Confidentialité.
🎙️ Le mot d’appel « Cornelius »
Le modèle qui reconnaît « Cornelius » est fourni dans models/cornelius.onnx, prêt à l’emploi. Il a été entraîné à partir de voix françaises de synthèse avec wakeword-generator, notre générateur de mots d’appel en français, publié à part. Vous pouvez vous en servir pour entraîner votre propre version, ou un tout autre mot.
📜 Licence
Cornelius est distribué sous la PolyForm Noncommercial License 1.0.0.
| ✅ Permis | ❌ Interdit |
|---|---|
L’utiliser, le partager et le modifier pour un usage non commercial (personnel, associatif, éducatif, recherche), en gardant la ligne Required Notice du fichier LICENSE |
Tout usage commercial, sauf accord écrit des auteurs |
Ce n’est pas une licence « open source » au sens de l’OSI, puisqu’elle exclut l’usage commercial. Les bibliothèques, polices et modèles utilisés gardent leur propre licence : voir THIRD_PARTY_NOTICES.md et Licences. Le modèle du mot d’appel est sous CC BY-NC-SA 4.0 (voir models/cornelius.onnx.LICENSE).
Fait avec ❤️ par Les Frères Poulain
Si le projet vous plaît, laissez une ⭐ au dépôt et passez voir la chaîne !
Explore related projects
awesome-selfhosted/awesome-selfhosted
A list of Free Software network services and web applications which can be hosted on your own servers
335,563 starsimmich-app/immich
High performance self-hosted photo and video management solution.
118,645 starsStirling-Tools/Stirling-PDF
#1 PDF Application on GitHub that lets you edit PDFs on any device anywhere
96,149 starslouislam/uptime-kuma
A fancy self-hosted monitoring tool
93,425 stars