Skip to main content
Clawker is a free, open-source, self-hosted AI coding agent sandbox — it runs coding agents like Claude Code and OpenAI Codex inside isolated Docker containers on your own machine, with no cloud and no subscription. It installs as a single CLI on any macOS or Linux host that has Docker. Pick the method below that fits your setup; all of them get you the same clawker command.

Prerequisites

  • Docker must be installed and running — Docker Desktop, Docker Engine, or a rootless daemon
  • macOS and Linux are supported
  • Windows is not currently supported

Install Script

Downloads a pre-built binary from GitHub releases. No Go toolchain required.

Options

Pin a specific version:
Install to a custom directory:

Build from Source

Requires Go 1.26+. Use the Makefile entry point — go install is unsupported because the CLI //go:embeds several Linux binaries (clawkerd, clawkercp, ebpf-manager, coredns-clawker, bpffs-delegate, idmap-mount) that are gitignored and produced by make clawker. Without them the build fails at compile time with a pattern assets/...: no matching files found error.
On Linux, the BPF toolchain (clang, llvm, libbpf-dev, linux-libc-dev) must be installed before make clawker can generate the eBPF bindings. Run sudo make bpf-deps once on Ubuntu 24.04 (Noble). On macOS this is handled automatically — the bindings extract through Dockerfile.controlplane via docker buildx.

Verify Installation

Staying Up to Date

Upgrade the same way you installed — brew upgrade schmitthub/tap/clawker, re-run the install script, or git pull && make clawker from source. After an upgrade, a one-time “What’s new” note appears on your first interactive run. For each release you gained since your previous version it shows that release’s changelog section — the grouped changes (Added, Fixed, Changed, …) with any docs links — then shows once and never repeats for that upgrade. The entries come from the curated CHANGELOG.md, which is fetched over the network and covers the handful of releases that actually changed what you see or do. The first interactive run after you move onto a version with this feature just records your current version as the starting point and shows nothing; from your next upgrade onward it lists what changed. The note is suppressed when you’re not at an interactive terminal (for example a non-interactive shell, or CI set) and can be opted out entirely by setting CLAWKER_NO_NOTIFIER — the same switch that silences the new-version update notifier.

First-Time Setup

Navigate to a project directory and initialize:
This walks you through a guided setup — pick a language preset (Python, Go, Rust, Node, Java, Ruby, C/C++, C#/.NET, Bare) and Clawker creates a clawker.yaml config tailored for your stack. User settings and XDG directories are bootstrapped automatically on first run. Clawker stores data following the XDG Base Directory Specification: See the Getting Started guide for the full walkthrough.