Devctl, a handy way to manage many dev servers Devctl, a new open-source tool for macOS, provides a menu bar command center and CLI for managing local dev servers, designed to prevent coding agents from losing track of servers they started. The tool, built by developer quantizor, uses a launchd-supervised daemon to own server processes, ensuring servers, logs, and crash forensics persist across sessions. Devctl offers idempotent commands like 'devctl ensure web' and a 'why' command for root-cause diagnosis, with a full CLI contract and support for project-level configuration via devservers.json. A macOS menu bar command center for local dev servers, built so coding agents never lose track of the servers they started. A launchd-supervised daemon owns every server process. Sessions come and go, contexts compact, terminals close: the servers, their logs, and their crash forensics stay. A CLI designed for agents stable --json everywhere and a quiet menu bar app for you sit on top of the same unix socket. Agents forget their dev servers. After a context compaction they spawn duplicates, tail dead logs, and fight over ports. devctl gives them one idempotent verb devctl ensure web that always lands in the same place, a session hook that re-teaches every new or compacted session what is running, and a why command that turns a broken server into a root-cause diagnosis. Your agent can do all of this for you, just point them at the repo. make install binaries to ~/.local/bin, app to /Applications, daemon installed cd your-project devctl register --name web --cmd bun --cmd run --cmd dev --port 3000 devctl ensure web idempotent: healthy is a no-op devctl why web root cause when something breaks devctl hook install Claude Code sessions rediscover servers automatically Or commit a devservers.json at the project root multiple servers, dependencies, healthchecks, .localhost host signatures, multi-headed proxies, lifecycle playbooks ; devctl up brings the whole project up in dependency order. The full CLI contract lives in docs/cli-contract.md /quantizor/devctl/blob/main/docs/cli-contract.md . devctld : the daemon. Spool-file output capture children survive daemon restarts without SIGPIPE , process-group plus descendant-sweep teardown, health-gated phases, crash forensics, structured logs with correlation marks, a unified event feed. devctl : the CLI. ensure , wait , up / down , logs --since-mark , mark , events , why , open , switch , lock pause servers sharing a resource while a test harness runs , doctor , and launchd management. Agents are the first-class consumer. devctl.app : the menu bar. Presence dots with counts, per-project rows with click-to-open heads pinnable , crash notifications, a dashboard with live logs, an event timeline, and a validating config editor. Every server and head is Spotlight-searchable. make build and make test ; scripts/smoke.sh is the end-to-end gate. No Xcode required, ever: the app bundle is assembled by a checked-in script. See CLAUDE.md for the codebase map and CONTRIBUTING.md for adding an agent-harness adapter.