Native Shell
Native Shell: AI-generated UI, native in your app, on every platform. Apps on iOS, Android, macOS, Windows and Linux, GPUI apps and web pages load signed, sandboxed TSX modules at run time and draw th
One VM for every project: an isolated sandbox with your project's toolchain, ready for you or an agent to start coding.
Developer toolsGo · ShellGitHub @devvmhqOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
One VM for every project. An isolated sandbox with your project’s toolchain, ready for you or a coding agent to start coding
Taken from the repository README
Loading the full README.
Read the full README ↗An isolated sandbox with your project's toolchain, ready for you or a coding agent to start coding.
Install · Read the docs · Staying safe
On macOS, install devvm with Homebrew, which also installs Lima:
brew trust --formula devvmhq/tap/devvm
brew install devvmhq/tap/devvm
On Linux, install it with the install script, which also works on macOS and asks before it installs Lima, QEMU or access to /dev/kvm:
curl -fsSL https://github.com/devvmhq/devvm/releases/latest/download/install.sh | bash
Then run devvm doctor, which checks what devvm needs on your machine and says how to get anything that's missing.
Each release is signed with devvm's minisign key, RWSjzFsn7ETaijKJ2y7F4DtZobXmyv+LmdclJwZP/KmAkLUwOCzWF/2b, and Checking the install script shows how to check the script with it before you run it.
cd ~/some-project
devvm
cd into any project folder.(devvm), so run claude there.devvm in the folder again opens the same VM.[!NOTE] The first run starts with a few questions that set devvm's defaults for every new VM and its base image: the size and coding agents new VMs get, and the base image's optional extras. It builds the base image once, in a few minutes. Later VMs start in seconds.
[!TIP] Claude Code needs your Claude login before its first start, which
devvm agent login claudemakes from the VM and keeps on your machine (Claude Code's login).
package.json gets node (toolchains).devvm agent import copies them in from an agent you already use on your machine (coding agents).docker, nix and desktop layers, and your own from devvm layer new (layers).By default, the VM mounts your project folder, so the VM and your editor share the same files. With devvm --clone, the VM gets a clone of the repo of its own, so nothing in it can touch your working tree or .git, and its work reaches your repo only when you fetch it:
devvm --clone # make the VM with its own clone, and open a shell in it
git fetch devvm # later, on this machine, fetch the VM's work as devvm/<branch>
git log -p main..devvm/main # review it before you merge it
Working on a clone has the details.
The docs are at devvm.dev, and their source is in docs/.
.git protection and attack vectors.