Repository navigation
v0.5.0
Changes
Vagrant engine (no Docker required)
Run cells as native VMs instead of Docker containers — useful for Apple Silicon without Docker Desktop, or when you need full Linux kernel features.
cell claude --macos # provision Debian ARM64 VM via UTM, then open Claude Code
cell build --macos # re-apply nixhome flake inside the VM
cell rdp --list # shows docker + vagrant cells side by sideSet permanently in .devcell.toml:
[cell]
engine = "vagrant"
vagrant_provider = "utm" # utm (macOS) or libvirt (Linux)
vagrant_box = "utm/bookworm"On first run: scaffolds a Vagrantfile, starts the VM, installs Nix single-user, and applies the same home-manager configuration used by Docker images. Subsequent runs skip provisioning if already done.
cell models: cloud + local side by side
cell models now shows Anthropic, OpenAI, and Google models (via OpenRouter) alongside local ollama models, ranked by SWE-Bench score and speed.
cell models # all models, ranked
cell models --source=local # ollama only
cell models --source=cloud # OpenRouter only
cell models --format=json # machine-readable outputResults are cached on disk (XDG_CACHE_HOME/devcell/) and refreshed in the background — no network wait on repeat invocations.
cell login: bot-detection bypass redesigned
The two-phase login flow now passes Cloudflare, Kasada, and similar systems:
- Phase 1: opens a clean browser on your host — no
--remote-debugging-port, no CDP flags, indistinguishable from a normal user session - Phase 2: after you close the browser, a separate headless CDP instance reads cookies from the same profile and writes
storage-state.json
Your fingerprint (User-Agent, platform, browser brands) is read from your real installed Chrome binary and saved alongside the session so Patchright replays with a matching identity.
cell login https://example.com # clean browser → you log in → cookies sync to container
cell login --force https://... # wipe saved session and start freshcell claude: auto-selects best available model
When use_ollama = true and no model is pinned in config, cell claude now queries running ollama instances and sets ANTHROPIC_MODEL to the top-ranked model by composite SWE-Bench + speed score. No manual model configuration needed.
codex --ollama: local ollama provider
cell codex --ollama # use ollama as local providerOr set permanently: use_ollama = true in [codex] section of .devcell.toml. Injects --oss, --local-provider ollama, and CODEX_OSS_BASE_URL automatically.
--format flag for machine-readable output
All listing commands now accept --format=text|json|yaml:
cell models --format=json
cell rdp --list --format=yaml
cell vnc --list --format=jsonProse output is suppressed in non-text modes.
Android module
modules = ["android"]Adds: ADB + fastboot (all platforms), Android SDK + build-tools + emulator + apktool + jadx (x86_64 only).
docker_privileged config
[cell]
docker_privileged = trueAdds --privileged to docker run. Required for workloads that need /dev/kvm, nested Docker, or full Linux capabilities inside the container.
Build error hints
cell build now parses docker build output for known failure patterns and shows actionable hints — disk space exhaustion, nix eval errors, package collisions — instead of raw build output.
Fixes
cell rdp --listandcell vnc --listnow show vagrant-engine cells alongside Docker containers- Image registry consolidated to
public.ecr.aws/w1l3v2k8/devcell(GHCR mirror removed from docs) - Codex nixhome config no longer sets stale
oss_provider = "lms"entry
What's Changed
- Run cells as native VMs instead of Docker containers — useful for Apple Silicon without Docker Desktop, or when you need full Linux kernel features. by @DimmKirr in #35
Full Changelog: v0.4.2...v0.5.0