Skip to content
FR
All projects
Repository

Owl Monitor

Open-source macOS app that launches, supervises and auto-recycles your JS/TS dev servers.

View on GitHub

Overview

Runs dev servers the way a production process manager runs services: launches them with the right heap, watches CPU / memory / health live, recycles them when they hang and revives crashes — no zombie servers, RAM shared fairly on 8 GB Macs, a build runner and a CLI hub every terminal routes through, with Claude-powered diagnostics. Swift 6 + SwiftUI (Liquid Glass), MIT-licensed with CI.

Key technical specs

  • Native Swift 6 / SwiftUI app (≈13k lines in 92 files) with C shims for process spawning, metrics and IPC.
  • posix_spawn into its own session, so each dev server's whole process tree is tracked and killed as one group — no zombie servers.
  • 1 Hz sampler + HTTP health probes detect hangs and recycle the server; crashes are revived with 1 s / 2 s / 4 s backoff.
  • Raises the V8 heap 4 → 6 → 8 GB after an out-of-memory exit and remembers it per project; RAM is shared fairly when several servers run.
  • Unix-socket hub behind a CLI (up, build, preview, status --json, logs -f…); the socket is 0600 and rejects other users via LOCAL_PEERCRED.
  • A Claude Code hook routes every agent's dev / build commands through the hub; Claude-powered diagnostics run read-only.
  • 19 headless test suites against real processes and sockets, macOS CI on GitHub Actions, MIT licence.

Memory pressure & reclaim

Detects critical RAM / swap (here 77% RAM, 88% swap), estimates how much it can free, and reclaims memory with one click — ranking the heaviest processes (managed server, Chrome, extensions) by impact.

Pressure suggestions

Under system pressure an inline panel surfaces the heaviest processes, each with a one-press kill button — critical apps (editor, Finder, the app itself) are never suggested or auto-closed.

Menu-bar control

A menu-bar companion to start / stop and check every project’s status straight from the macOS menu bar, without opening the full window.

Settings & Claude Code hook

Install the Claude Code hook that routes every dev server and build through the app, pick theme and default browser / editor, and choose which activity meters are shown.