Repository navigation
v0.4.0
New commands
cell chrome— open host Chromium with a project-scoped profile, log into sites, press Enter. Cookies export as Playwrightstorage-state.jsonwith matching UA fingerprint so MCP replays authenticated sessions inside the container.cell login <url>— shortcut: opens a URL directly for quick auth and cookie sync.cell serve— local ollama-compatible API proxy with Anthropic endpoints. Claude Code and Codex work with local models without per-tool API key setup.cell initis now interactive and project-local. Creates.devcell.toml+.devcell/in the current directory with stack and module selection.
New config sections
[aws]—read_only = truescopes container credentials to read-only via IAM session policy. AI agents can query CloudWatch and read S3 but cannot modify anything.[op]—documents = [...]replaces the olditemsfield. 1Password-resolved env vars are written to tmpfs; secrets never touch disk.[ports]—forward = ["3000", "8080:3000"]for container-to-host port forwarding.[mise]— forwarded asMISE_*env vars.[cell]— newlocalefield. Container locale matches the host instead of defaulting to POSIX.
New nix modules
- postgresql — PostgreSQL client tools
- project-management — Linear, Notion, and project tracking tools
- qa-tools — testing and quality assurance utilities
- security — Hexstrike AI security scanner and penetration testing tools
- stripe-cli added to financial module
Patchright bot-stealth
Playwright MCP is now nix-packaged with a stealth init-script, runtime TZ/locale injection, and human-like Bezier mouse trajectories. Passes bot detection including mouse-movement analysis.
Composable flake exports
devcell.lib.mkHome, devcell.stacks.*, and devcell.modules.* are now exported from the nixhome flake. Build custom stacks in user wrapper flakes without forking.
Fixes
cell buildauto-rebuilds when build context is newer than the existing image — no more silently running stale containers after a config change or failed build.- Stack picker shows compressed Docker download sizes (ultimate shows ~7.6 GB, was ~2.9 GB nix-only number).
- Container shared memory increased to 1 GB — drawio-headless and Chromium no longer crash on large renders.
- Hexstrike server working directory redirected to
/tmp— hexstrike.log no longer pollutes the project directory.
Infrastructure
- Renamed
basestage tocoreacross Dockerfile, bake targets, and CI. - Images published to ECR Public (
public.ecr.aws/w1l3v2k8/devcell) alongside GHCR. - CI uses nix-cache pre-seeding via skopeo + zstd compression for faster builds.
- Separate
deploy-site.ymlworkflow; dev releases marked as prerelease. - Replaced pterm with charmbracelet (lipgloss + huh + bubbletea) for brand color palette and adaptive theming.
- Moved codex, opentofu-mcp, playwright, patchright-mcp from npm to nix for reproducible builds.
Full Changelog: v0.3.0...v0.4.0a