Aller au contenu
EN
Tous les projets
Dépôt

Owl Monitor

App macOS open source qui lance, supervise et recycle automatiquement vos serveurs de développement JS/TS.

Voir sur GitHub

Vue d’ensemble

Fait tourner les serveurs de développement comme un gestionnaire de processus de production fait tourner des services : les lance avec la bonne taille de heap, suit CPU / mémoire / santé en direct, les recycle quand ils se figent et relance les crashs — pas de serveurs zombies, une RAM partagée équitablement sur les Mac 8 Go, un lanceur de builds et un hub CLI par lequel passe chaque terminal, avec des diagnostics propulsés par Claude. Swift 6 + SwiftUI (Liquid Glass), licence MIT, avec CI.

Points techniques clés

  • App native Swift 6 / SwiftUI (≈13 000 lignes dans 92 fichiers) avec des shims C pour le lancement de processus, les métriques et l’IPC.
  • posix_spawn dans sa propre session : tout l’arbre de processus de chaque serveur est suivi et arrêté comme un seul groupe — pas de serveurs zombies.
  • Échantillonnage à 1 Hz + sondes de santé HTTP pour détecter les blocages et recycler le serveur ; les crashs sont relancés avec un backoff de 1 s / 2 s / 4 s.
  • Augmente le heap V8 de 4 → 6 → 8 Go après une sortie pour manque de mémoire et s’en souvient par projet ; la RAM est partagée équitablement entre plusieurs serveurs.
  • Hub sur socket Unix derrière une CLI (up, build, preview, status --json, logs -f…) ; le socket est en 0600 et rejette les autres utilisateurs via LOCAL_PEERCRED.
  • Un hook Claude Code fait passer les commandes dev / build de chaque agent par le hub ; les diagnostics Claude s’exécutent en lecture seule.
  • 19 suites de tests headless sur de vrais processus et sockets, CI macOS sur GitHub Actions, licence MIT.

Pression mémoire et récupération

Détecte une RAM / un swap critiques (ici 77 % de RAM, 88 % de swap), estime ce qu’il peut libérer et récupère la mémoire en un clic — en classant les processus les plus lourds (serveur géré, Chrome, extensions) par impact.

Suggestions sous pression

Sous pression système, un panneau intégré affiche les processus les plus lourds, chacun avec un bouton d’arrêt — les apps critiques (éditeur, Finder, l’app elle-même) ne sont jamais proposées ni fermées automatiquement.

Contrôle depuis la barre des menus

Un compagnon dans la barre des menus pour démarrer / arrêter et vérifier l’état de chaque projet directement depuis la barre des menus macOS, sans ouvrir la fenêtre complète.

Réglages et hook Claude Code

Installe le hook Claude Code qui fait passer chaque serveur et chaque build par l’app, choisit le thème, le navigateur / l’éditeur par défaut et les jauges d’activité affichées.