
agentctl – run AI coding agents in isolated local Docker sessions
Hi,
I’ve been working on agentctl, a local-first control plane for running AI coding agents on your own machine.
The idea is simple: instead of giving a coding agent direct access to your host environment, each agent session runs inside its own Docker container, with its own working volume, network, mounted skills, MCP servers, and optional repo clone.
There are two parts:
- agentd: a local daemon that owns session state, sqlite, Docker lifecycle, usage/cost tracking, and recovery
- agentctl: a CLI and local web UI that talk to the daemon
The main things I wanted to solve:
Isolation
Each session gets its own container and bridge network. The agent only sees the repo/environment you hand to it, not your whole host filesystem.
Re-attachable sessions
You can start a session, detach, and later reattach from the CLI or web UI without losing state.
Multi-provider workflows
It currently supports Claude Code and OpenAI Codex. A single workflow can use different providers at different stages.
Assembly-line agents
Instead of one huge agent trying to do everything, you can define smaller role-scoped agents and chain them together. For example:
investigate → plan → execute → review
Local ownership
The daemon, sqlite DB, session volumes, skills, MCP registry, and web UI all live locally. There is no hosted service.
The repo includes a CLI, React web UI, built-in skills, MCP registry support, task board, session logs, diff/export support, and doctor/repair commands.
This is still early and very much a developer tool. It currently targets macOS/Linux with Docker. I’m especially interested in feedback from people who are running coding agents on real repos and care about isolation, repeatability, MCP/tool boundaries, and keeping agent state under their own control.