Bernato vs Supervisor (supervisord): Process Supervision Comparison
Supervisor: rock-solid single-host daemon supervisor. Free, Python-based, INI config. Use for traditional service supervision on a Linux box. Bernato: multi-machine, macOS sandboxing, web approvals, AI-agent-aware. Linux supports opt-in bwrap when available; Windows has limited Job Object containment without filesystem/network isolation. Use when you need fleet view or AI-agent shape.
Supervisor (supervisord) has been doing one thing well since 2004: keep a Linux daemon running. Define a process in /etc/supervisor/conf.d/myservice.conf, run supervisorctl start myservice, walk away. It's the answer to "I need this Python script to stay up forever."
Bernato is a different shape — same family of problem, different design choices.
Feature matrix
| Supervisor | Bernato | |
|---|---|---|
| Single-host supervision | ✓ | ✓ |
| Multi-machine fleet view | ✗ | ✓ |
| Configuration shape | INI files in /etc/supervisor | JSON config + spawn API + dashboard |
| Auto-restart | ✓ (configurable) | ✓ (5/60s ceiling) |
| Web UI | Bare-bones built-in | Dashboard/PWA |
| Sandbox per process | ✗ | ✓ macOS Seatbelt today; Linux/Windows trusted-host/open until parity ships |
| Activity log | ✗ | ✓ |
| Mobile approvals | ✗ | ✓ |
| Browser PTY | ✗ | ✓ |
| Configuration reload | ✓ supervisorctl reread + update | Live (config picked up on next spawn) |
| Languages | Any (Linux only) | Any (cross-platform) |
| Free | ✓ | ✓ 3 nodes; paid checkout hidden this cycle |
Where Supervisor wins
Simplicity for traditional service supervision. If you have a Python script that should run forever, an INI file and supervisorctl are 5 lines of config and zero JavaScript. Hard to beat for single-host service supervision.
Battle-tested. 20 years of production use. Edge cases are debugged.
No daemon-per-machine cost. Supervisor is one daemon per host; Bernato is the same architecturally. Tied.
Where Bernato wins
Fleet view across machines. Five Linux boxes with Supervisor = five separate Supervisor instances + your own dashboard glue. Bernato ships the dashboard.
Sandbox + capabilities. Supervisor runs whatever you tell it to with the user's permissions. Bernato wraps macOS spawns in Seatbelt with a capability profile derived from a token bundle. Workspace-only writes on macOS; Linux supports opt-in bwrap when available; Windows has limited Job Object containment without filesystem/network isolation.
Activity log. Supervisor's logs are stdout/stderr per process. Bernato has a local activity log of every spawn / kill / capability grant / sandbox block — queryable and exportable.
Mobile. Supervisor has no mobile story. Bernato has native iOS + Android with mobile permission approvals.
AI-agent-shaped. Restart-on-crash with awareness of model 500s, capability tokens designed for "this agent can take screenshots but not write outside workspace," browser PTY with multi-client fanout for late-joining clients.
The "supervisor alternative for ai agents" question
Supervisor wasn't designed for AI agents. It works fine for "keep this process up" but the surrounding concerns — what did the agent do, can I approve actions from my phone, is the agent contained — aren't its job. Bernato was built with those as primary requirements.
Migration: Supervisor → Bernato
# Supervisor /etc/supervisor/conf.d/scraper.conf
[program:scraper]
command=python3 /home/me/scraper/run.py
autorestart=true
user=me
stdout_logfile=/var/log/scraper.log
# Bernato (via dashboard or CLI)
bernatod ctl spawn --name scraper --auto-restart \
--workspace /home/me/scraper \
'python3 run.py'
Same supervision; Bernato adds workspace boundary, audit log, fleet view, and web approvals.
Use both
Reasonable. Supervisor for the system services that should stay up forever (databases, web servers, queue workers). Bernato for the AI-agent / multi-machine / interactive supervision tier. Two daemons on a single host don't conflict.
FAQ
Does Supervisor support Windows?
No — Supervisor is Linux/Unix only. Bernato works on macOS, Linux, Windows.
Can Supervisor manage processes on multiple hosts?
Not natively. You can write your own coordinator on top of supervisorctl, but the dashboard / fleet view is your problem to build.
Is Supervisor's web UI usable?
It exists. It's spartan. Most users layer Cesi or another web frontend on top.
Does Bernato replace Supervisor for system services?
It can — same restart-on-crash semantics. The argument for Supervisor in 2026 is mostly familiarity / inertia for traditional Linux ops; the argument for Bernato is fleet view + macOS sandboxing + mobile.