quickstart · ~5 min
From install to first message.
Tested on macOS 14 + Linux (Ubuntu 22.04, Debian 12). Requires docker 24+. Go is bundled into the brew formula; you don't need a Go toolchain.
Docker is the sandbox
dclaw runs every agent inside Docker. If docker info doesn't work for your user, fix that first — Colima, Docker Desktop, or rootless Docker all work. dclaw doctor will tell you what's missing.
1 · Install
brew install itsmehatef/tap/dclawshell 2 · Initialize + start the daemon
dclaw init # writes ~/.config/dclaw/config.yaml
dclaw doctor # checks docker, ports, write perms
dclaw daemon start # backgrounded; logs at ~/.local/state/dclaw/daemon.logshell init creates an empty fleet, a default config, and (on first run) pulls the agent image — about 250MB.
3 · Spawn an agent
dclaw agent create scratch \
--image=dclaw-agent:v0.1 \
--workspace=~/dclaw/scratchshell The workspace is bind-mounted into the container at /workspace. Path validation runs before mount: denylist (/etc, /var, docker.sock) is absolute; symlinks are resolved.
4 · Talk to it
dclaw agent chat scratch --one-shot 'list files in workspace'
# → bash tool runs inside the container; output streams backshell 5 · Tear it down
dclaw agent destroy scratch # stops + removes container, keeps workspace
dclaw daemon stop # if you're doneshell That's the loop.
Spawn → chat → destroy. Everything else (channel plugins, fleet.yaml, multi-agent orchestration) layers on top of these four commands.
Where to next
- CLI reference — every flag
- fleet.yaml — declarative agents
- Architecture — what's actually inside the container