Claude Code in the VM
Overview
Nemeton starts Claude Code in a macOS VM, follows along and operates the session. Each session runs in its own Terminal window in the guest. There you see live what Claude Code is doing, and you can type and answer questions yourself. The feature is in beta.
Requirements
- macOS VM with Nemeton Bridge: through Nemeton, Claude Code runs only in macOS VMs, not in Linux VMs.
- Claude Code installed in the VM: Nemeton does not ship or install Claude Code.
- Your own Claude account: Claude Code runs in the VM with your own account under Anthropic's terms for Claude Code. Nemeton only starts and operates it.
- Remote control switched on: for MCP and the AI assistant, "Remote-control this VM via MCP" must be switched on for the VM.
You can also store an API key or a long-lived OAuth token (from claude setup-token) in Nemeton. Nemeton passes it into Claude Code's environment at start.
Starting and Operating
You start and control sessions through the MCP interface, the REST API or the AI assistant. At start you specify the task and the working directory in the VM. Up to four sessions run side by side per VM, each with its own task.
| Tool | Purpose |
|---|---|
vm_claude_status | Shows whether Claude Code is installed in the VM, which version, and how many sessions are running |
vm_claude_start | Starts a session with a task and working directory |
vm_claude_list | Lists running and ended sessions of a VM with their state |
vm_claude_read | Reads the history of a session |
vm_claude_snapshot | Returns the terminal screen as text |
vm_claude_send | Sends another message to Claude Code |
vm_claude_wait | Waits until the state of a session changes |
vm_claude_interrupt | Interrupts the current step |
vm_claude_stop | Ends a session including its window |
vm_claude_show | Brings the session's Terminal window to the front in the guest |
For other programs there are the terminal tools vm_terminal_*: open, read, write and resume terminal sessions in the guest.
VM Controls VM
Claude Code in a macOS VM can operate your other VMs via MCP through the Nemeton Bridge. You switch this on in the VM's settings under VM controls VM; it is off by default. The host, its settings, files and devices stay locked.
Tasks and Logs
Don't put passwords or keys in tasks. Tasks go to Claude like any other input. Nemeton stores the task and log of a session indefinitely in the VM's folder on your Mac; the terminal text stays in the VM.