Claude Desktop Buddy
Claude Desktop Buddy est un projet de référence montrant comment Claude pour macOS et Windows se connecte à des appareils BLE pour afficher prompts et états.
Qu'est-ce que claude-desktop-buddy ?
Claude Desktop Buddy (anthropics/claude-desktop-buddy) est un projet de référence et d'exemple qui montre comment Claude pour macOS et Windows peut se connecter à des « maker devices » via Bluetooth Low Energy (BLE). Il est conçu pour les développeurs et makers qui souhaitent créer du matériel capable d'afficher des invites de permission, les messages récents et d'autres états d'interaction provenant de Claude Cowork et Claude Code Desktop.
Le dépôt est principalement de la documentation et un firmware d'exemple pour un appareil « buddy » BLE. Vous n'avez pas besoin du code pour concevoir du matériel conceptuellement, mais vous pouvez suivre la référence du protocole filaire dans REFERENCE.md pour implémenter le protocole dans votre propre appareil BLE.
Fonctionnalités principales
- Référence du protocole filaire BLE (UUIDs Nordic UART Service, schémas JSON) : vous aide à implémenter un comportement d'appareil compatible sans deviner les formats de messages.
- Pont firmware d'exemple pour les interactions Claude : connecte l'appareil à Claude pour que le matériel réagisse aux états d'interaction.
- Flux de connexion d'appareil avec le mode Développeur et la fenêtre Hardware Buddy : documente comment appairer un appareil BLE de type stick avec Claude Desktop.
- Cible firmware ESP32 avec le framework Arduino : fournit un point de départ concret pour les implémentations embarquées.
- Support de deux modes d'affichage « pet » — ASCII et GIF : l'appareil d'exemple peut afficher un ensemble d'animations ASCII ou diffuser un pack de personnages GIF personnalisé via BLE.
Comment utiliser claude-desktop-buddy
- Partez de l'exemple firmware : le firmware matériel cible ESP32 avec le framework Arduino. L'exemple du dépôt dépend de la bibliothèque M5StickCPlus pour l'affichage, l'IMU et les pilotes de boutons ; vous aurez besoin de cette carte ou d'une fourche qui remplace les pilotes pour vos broches/disposition.
- Installez PlatformIO Core, puis flashez le firmware d'exemple avec
pio run -t upload. - Si vous re-flashez un appareil déjà programmé, effacez d'abord avec
pio run -t erase && pio run -t upload. - Appairez votre appareil avec Claude Desktop :
- Activez le mode développeur dans Claude Desktop (Help → Troubleshooting → Enable Developer Mode).
- Ouvrez la fenêtre Hardware Buddy (Developer → Open Hardware Buddy…), cliquez sur Connect, et sélectionnez votre appareil dans la liste.
- Sur macOS, la première connexion demande l'autorisation Bluetooth ; accordez-la.
- Utilisez le flux d'appairage pour tester les invites d'interaction et les réponses de l'appareil. Le pont se reconnecte automatiquement quand les deux côtés sont éveillés.
Cas d'utilisation
- Créez un appareil BLE « invite de permission » : utilisez le protocole de référence et le comportement du firmware d'exemple pour que l'appareil invite les utilisateurs à approuver ou refuser les demandes de Claude.
- Créez un compagnon de bureau interactif qui répond à l'état de session : l'exemple inclut un « pet » d'appareil qui change d'état selon que la session est connectée, occupée, en attente d'approbation ou terminée.
- Déployez un contrôleur d'affichage basse consommation pour les notifications : l'exemple de desk pet décrit le sommeil quand rien ne se passe et l'éveil au démarrage des sessions.
- Personnalisez les visuels de personnages sur l'appareil avec un pack GIF : fournissez un dossier contenant
manifest.jsonplus des fichiers GIF de 96 px de large pour les états ; l'app diffuse le pack via BLE et bascule l'appareil en mode GIF. - Itérez sur les assets d'affichage sans allers-retours BLE : le dépôt inclut un workflow
tools/flash_character.pyqui prépare les données de personnages et les upload directement via USB.
FAQ
Ai-je besoin d'utiliser le code d'appareil fourni pour créer du matériel compatible ?
Non. Le dépôt indique que vous n'avez pas besoin du code ici pour créer votre propre appareil ; REFERENCE.md fournit les détails du protocole filaire (UUIDs, schémas JSON et transport de push de dossiers).
Quel matériel le firmware d'exemple supporte-t-il ?
Le firmware cible ESP32 avec le framework Arduino. Tel quel, il dépend de la bibliothèque M5StickCPlus pour l'affichage, l'IMU et les pilotes de boutons, donc vous aurez besoin de cette carte ou d'une fourche avec d'autres pilotes.
Comment appairer un appareil avec Claude Desktop ?
Activez le mode développeur, ouvrez la fenêtre Hardware Buddy (Developer → Open Hardware Buddy…), cliquez sur Connect et choisissez votre appareil. macOS requiert l'autorisation Bluetooth à la première connexion.
Que faire si l'appareil BLE n'est pas détecté ?
Le dépôt suggère de vérifier que le stick est éveillé (appuyez sur n'importe quel bouton) et que le Bluetooth est activé dans le menu des paramètres du stick.
L'appareil peut-il afficher des animations de personnages personnalisées ?
Oui. L'exemple supporte les pets ASCII et les pets GIF. Pour le mode GIF, fournissez un dossier de pack de personnages avec manifest.json et des GIF de 96 px de large pour les états ; les fichiers d'état peuvent être un nom de fichier unique ou un tableau pour faire tourner les animations.
Alternatives
- Implémentez votre propre appareil BLE en utilisant le protocole filaire fourni : au lieu d'utiliser le firmware de référence, vous pouvez écrire une pile BLE personnalisée qui suit les UUID du service Nordic UART documentés et les schémas JSON.
- Utilisez une autre plateforme embarquée avec BLE mais la même logique applicative : si l'ESP32 n'est pas votre cible, vous pouvez adapter le protocole et la gestion des états (veille/réveil, affichage du prompt d'approbation, et mises à jour de l'UI) à votre microcontrôleur préféré.
- Créez un « compagnon de bureau » purement logiciel sans matériel BLE : si vous avez seulement besoin d'une interface sur l'ordinateur, envisagez une approche d'intégration logicielle seule plutôt qu'un appareil d'affichage/animation physique.
Alternatives
AakarDev AI
AakarDev AI est une plateforme puissante qui simplifie le développement d'applications d'IA avec une intégration fluide des bases de données vectorielles, permettant un déploiement rapide et une évolutivité.
Arduino VENTUNO Q
Arduino VENTUNO Q : ordinateur edge IA pour la robotique, combinant inférence accélérée et microcontrôleur pour un contrôle déterministe. Arduino App Lab.
Devin
Devin est un agent de codage IA qui automatise des sous-tâches en parallèle pour des migrations et gros refactors, sous contrôle humain et validation.
Codex Plugins
Utilisez Codex Plugins pour regrouper des skills, intégrations d’app et serveurs MCP en workflows réutilisables afin d’étendre l’accès à Gmail, Google Drive et Slack.
Ably Chat
Ably Chat : API et SDK de chat temps réel pour créer des applications personnalisées, avec réactions, présence et édition/suppression de messages.
Falconer
Falconer est une plateforme de connaissances qui se met à jour automatiquement pour équipes rapides : écrivez, partagez et trouvez une documentation interne fiable.