J'ai pas mal de déplacements pro en ce moment, et comme je suis sur plein de projets en même temps, c'est un peu relou. Parce que tout ne tourne pas uniquement sur mon ordi portable. J'ai des traitements un peu plus lourds qui tournent par exemple sur mon Mac Studio et faut dire que je lui en fais vraiment voir de toutes les couleurs à celui-là...

La plupart du temps, j'arrive heureusement à tout gérer à distance en me connectant en SSH à l'ordinateur via mon VPN privé (ça me permet d'avoir toutes mes machines sur le même réseau local virtuel comme ça c'est chiffré et sécurisé) mais il arrive parfois que je doive cliquer sur un bouton ou taper un mot de passe via l'interface de macOS. Jusqu'à présent pour ce genre de choses, j'utilisais donc l'application Partage d'Écran fournie par Apple, mais je ne sais pas vous, chez moi ça lag furieusement et c'est vraiment pas pratique à utiliser. Bref, j'aime pas.

Je me suis donc rabattu sur des Real VNC et compagnie, mais pareil, ce n'est pas un protocole et des clients que je trouve très efficaces. Et j'avais pas envie non plus de payer un peu au pif une app présentée comme meilleure comme celle-ci d'Apple pour voir ce que ça donne : Du coup, je me suis créé à l'aide d'agent IA, ma propre application de prise de contrôle à distance en y mettant toutes les fonctionnalités dont j'avais besoin. Ça s'appelle Korben Remote Desktop et ça fonctionne en deux parties.

On a d'un côté un petit agent sur l'ordi à contrôler, qui demande juste les autorisations système "Enregistrement de l'écran" et "Accessibilité" (sans oublier la fonctionnalité de Session à distance activée dans Partage, pour le tunnel SSH au niveau des réglages de macOS), et de l'autre côté le client sur le Mac que vous avez sous les yeux. Les deux se parlent ensuite à travers un tunnel SSH chiffré, sur votre réseau local ou votre VPN privé, sans passer par aucun serveur chez moi ni ailleurs puisque l'appli refuse carrément les adresses IP publiques pour des questions de sécurité. Voici tout ce que j'ai mis en place dans cette application : Une image fluide, jusqu'en 4K.

Capture ScreenCaptureKit, encodage HEVC ou H.264 par la puce du Mac, transport UDP chiffré avec de la parité Reed-Solomon pour encaisser les paquets perdus. Qualité au choix (Automatique, 720p, 1080p, 4K ou Native) et cadence de 30, 60 ou 120 images par seconde. Un Wi-Fi qui coupe n'est plus un drame.

Une micro-coupure est traitée comme un retard et pas comme une perte, et trois priorités de présentation (Réactif, Équilibré, Fluide) règlent le tampon selon que vous voulez la latence la plus basse ou aucun gel d'image. Le son aussi. Le son système du Mac distant arrive au format Opus, et si y'a pas de son, aucune bande passante n'est consommée pour ça.

Souris, clavier et raccourcis. Défilement précis, boutons latéraux compris, et les raccourcis partent au Mac distant tant qu'il a le clavier (⌘C copie là-bas, pas chez vous). Ceux du client sont donc basculés en ⌃⌥⌘ pour ne pas leur marcher dessus.

Un mode jeu. Capturer la souris (⌃⌥⌘G) cache le curseur, envoie le mouvement brut sans le bloquer aux bords de l'image et passe le clavier en touches physiques, donc W reste la touche W quelle que soit la disposition. Les manettes passent aussi, en expérimental.

Tous les écrans. Vous passez d'un écran à l'autre, ou vous les affichez tous à la fois (⌃⌥⌘A), rangés comme sur le Mac distant, le pointeur passe de l'un à l'autre et une fenêtre se tire d'un écran à l'autre. Un écran branché ou débranché pendant la session apparaît ou disparaît tout seul.

Zoom et plein écran. Un zoom comme celui de macOS (pincement à partir du curseur, déplacement à deux doigts, double toucher) et un plein écran système dont la barre d'outils se range. Les fenêtres des apps distantes, chez vous.

Une fenêtre d'une application du Mac distant (un Terminal du Studio, par exemple) peut s'ouvrir comme une fenêtre indépendant sur votre Mac. Vous la déplacez, la redimensionnez, vous tapez et cliquez dedans, et c'est l'application distante qui répond. Quand elle a accès au clavier, la barre des menus de votre Mac affiche même les menus de cette application distante, et un clic droit y ouvre le vrai menu contextuel du Mac distant.

Fichiers et presse-papiers. Presse-papiers texte partagé, transfert de fichiers dans les deux sens, y compris en glisser-déposer vers et depuis le Finder distant. Un transfert interrompu peut également reprendre sans tout recommencer.

Les fichiers reçus sont ensuite mis en quarantaine, comme n'importe quel téléchargement. Reconnexion automatique. Si le lien tombe, l'image se grise et le client réessaie jusqu'à ce que vous l'arrêtiez, en gardant vos fenêtres déportées.

Et si aucune session n'est ouverte sur le Mac distant (après un redémarrage, par exemple), l'appli vous propose alors d'ouvrir le Partage d'écran d'Apple pour taper votre mot de passe, puis reprend la main dès que l'agent est prêt (J'ai pas d'autre choix que de faire comme ça). Un Mac qui ne montre rien pendant que vous bossez dessus. Durant une session, l'écran du Mac distant est noir pour quelqu'un qui passerait devant, son clavier et sa souris sont bloqués et ses haut-parleurs sont coupés (le son, lui, continue d'arriver chez vous).

À la déconnexion, l'agent demande au lecteur multimédia de se mettre en pause (s'il peut le faire) et verrouille la session, par défaut. Un accès depuis un simple navigateur. L'agent peut aussi ouvrir un accès web, à démarrer explicitement dans sa fenêtre.

Vous copiez un lien à usage unique valable quinze minutes, vous l'ouvrez dans Safari ou Chrome sur votre réseau privé, vous comparez l'empreinte du certificat avec celle affichée par l'agent, et vous retrouvez l'écran, le son, le zoom et le contrôle sans rien installer. Les fichiers et les fenêtres séparées restent réservés au client Mac. Sécurisé par défaut.

Tunnel SSH obligatoire pour le client natif (votre compte SSH est la clé, aucun compte à créer nulle part), TLS avec échange de clés ECDHE et ChaCha20-Poly1305 pour le lien de contrôle, AES-256-GCM pour l'image et le son, adresses publiques refusées, et un seul viewer à la fois (le deuxième doit demander la place au premier, qui répond oui ou non). Une vraie app Mac. Barre latérale avec vos Macs, barre d'outils native, fenêtre Réglages, menus complets, mode sombre, français ou anglais selon la langue du système, et les Macs du réseau qui ont la session à distance activée sont trouvés tout seuls par Bonjour.

Les statistiques du flux (⌃⌥⌘I) donnent la latence, la gigue, le tampon et les pertes, et une "liaison économe" allège tout d'un coup pour un réseau lent ou compté. Ce que ça ne fait pas encore par contre, c'est pas de réveil à distance, pas de déverrouillage FileVault après un redémarrage à froid (prévu sur macOS 26, mais pas encore validé), les gestes du trackpad comme la rotation ou le balayage à trois doigts ne passent pas, et le verrouillage des majuscules reste celui du Mac distant. Il faut macOS 14 minimum des deux côtés, et les deux applications sont universelles, Apple Silicon comme Intel (testées sur Apple Silicon, l'Intel et macOS 14 restent à valider).

Maintenant pour pour l'utiliser tous les jours, ce que je peux vous dire c'est que ça marche très bien. Maintenant, j'ai pas eu d'autres testeurs que moi-même pour le moment mais ça fait tout ce dont j'ai besoin. Et je me suis payé le luxe également d'adapter le code (en version ultra alpha, j'ai pas encore assez testé ça) pour Windows et Linux.

Et l'application iOS est également sur les rails. Maintenant, comme d'hab, j'ai essayé de la mettre sur l'App Store d'Apple mais ils sont tellement casse couilles que je ne sais pas si j'y arriverai. Mais peu importe, je me suis dit que ça vous servirait alors je vous ai fait un petit site ici pour télécharger mon app : remotedesktop.korben.info .

C'est 100% gratuit, y'a aucune télémétrie ni pub dedans et je n'ai pas de plan de carrière avec ce logiciel si ce n'est de l'améliorer par petites touches au fil du temps. Je l'ai créé pour mes besoins et je me suis dit que ce serait dommage de ne pas vous en faire profiter, c'est tout. Voilà, donc n'hésitez pas à tester.

C'est conçu pour macOS mais j'ai décliné ça pour Windows et Linux (je le redis, c'est de l'alpha pour Win et Linux) afin que chaque client puisse prendre le contrôle de n'importe quelle machine peu importe son système d'exploitation. Enjoy !