vm_guest_upload
Upload a local file to a VM guest via VMware Tools, replacing an existing destination file. Requires VMware Tools running in the guest OS.
Instructions
[WRITE] Upload a file from local machine to a VM via VMware Tools.
Returns a dict with action, message and blast_radius (a status string before the confirmation gate). Requires VMware Tools running in the guest OS. An existing file at guest_path is replaced. Use vm_guest_download for the reverse direction, and vm_guest_provision instead when uploads and commands belong to one ordered provisioning run.
Without confirm=True this only previews: blast_radius names the VM (name, instance UUID), the guest account, the local path and size, the guest path, VMware Tools status and any blockers; nothing is transferred. Show it to the user. Do not set confirm=True on your own because the user asked earlier: they have not seen the preview yet. Refused outright: VM not powered on, VMware Tools not running, a local file that is missing or unreadable, an unreadable identity or status, or a name that matches more than one VM.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| target | No | Optional vCenter/ESXi target name from config. | |
| confirm | No | False (default) returns the blast radius and changes nothing. True applies it. | |
| vm_name | Yes | Target VM name. | |
| password | No | Guest OS password. | |
| username | Yes | Guest OS account to run as. Required — there is no default, so a call can never act as root without choosing root. | |
| guest_path | Yes | Destination path inside the guest. | |
| local_path | Yes | Local file path to upload. |