Named Docker volumes are created as root on first use, causing permission denied errors for the developer user. The entrypoint now fixes ownership of all known volume mount points after UID/GID adjustment.
Dockerfile with Node.js 22, git, ssh, fzf, ripgrep, fd, non-root user. Entrypoint auto-configures provider from env vars. docker-compose with workspace mount, SSH keys, and persistent data volume.