doctor
The watchdog that keeps your memory stack alive. Your coding agents run on local daemons, and a daemon that quietly dies at 2am costs you the next morning. doctor makes sure that never happens.
who restarts the restarter
A memory daemon dies and nothing notices, so your agent starts the day with the memory of a goldfish. doctor stands outside every failure domain it watches. Your operating system supervises doctor, and doctor supervises everything else, so it catches the crash, climbs a repair ladder, and has the daemon back before your next prompt.
what it does
watches everything, every 30 seconds
Probes each daemon and learns the kind of wrong: down, wedged, or degraded in a specific subsystem.
heals on a ladder
Restart, reinstall after three failures, remove a conflicting package, back off, and stop the instant health returns.
quiet when fine, loud when stuck
A healthy probe is one debug line. When the ladder runs out, doctor writes a structured, do-this-next report.
safe by construction
Blessed-release updates with automatic rollback, and no code that can read or delete your credentials.
the specs
- dependencies
- zero, node built-ins only
- supervised by
- launchd / systemd / task scheduler
- privileges
- per-user, no admin
- status surface
- 127.0.0.1:3852 + /status.json
- auto-update
- blessed gate, verified, rollback
- platforms
- macos, linux, windows
common questions
Does it need admin rights?
No. doctor registers per-user by default on all three platforms, so there is no sudo and no UAC prompt.
What if doctor itself crashes?
Your operating system restarts it. doctor is supervised by launchd, systemd, or task scheduler, not by anything in the stack it watches.
Will it update things behind my back?
Only the memory daemon, only behind the blessed gate, and only if you have not opted out. doctor never auto-updates its own package.
Can it break my install worse than it found it?
The risky repairs are gated, serialized behind a lock, verified afterward, and rolled back on a failed verify. The one destructive action writes an audit record first and never touches your data.
give your stack a watchdog
One command. The installer sets up the whole apiary, doctor included, and doctor keeps it healthy from then on.
Windows (PowerShell): irm https://get.theapiary.sh/install.ps1 | iex
get doctor