> as simple as installing Claude in the VM and connecting via an SSH terminal
I've done exactly this, and it works pretty well!
1. I setup a VM in UTM (but this could be any kind of containerization thing). I don't even bother with a non-root account in there (the agent has free rein to install packages, write files, etc).
2. I SSH into the container.
3. I install Claude or whatever there.
4. I setup git things in a way where I can push/pull to move code between the container and my host machine.
Upsides: the agent is isolated from the rest of my host system, only being able to read/write what I've explicitly handed to it.
Downsides: the agent is isolated from the rest of my host system, so it's more limited in capability.
I've done exactly this, and it works pretty well!
1. I setup a VM in UTM (but this could be any kind of containerization thing). I don't even bother with a non-root account in there (the agent has free rein to install packages, write files, etc). 2. I SSH into the container. 3. I install Claude or whatever there. 4. I setup git things in a way where I can push/pull to move code between the container and my host machine.
Upsides: the agent is isolated from the rest of my host system, only being able to read/write what I've explicitly handed to it. Downsides: the agent is isolated from the rest of my host system, so it's more limited in capability.