| name | virtual-machine-management |
| description | Create, manage, and optimize virtual machines in Proxmox. Control VM lifecycle, monitor performance, adjust resources, and plan VM deployment strategies. |
Virtual Machine Management Skill
Create, manage, and optimize virtual machines in your Proxmox environment.
What this skill does
This skill enables you to:
- List virtual machines on specific nodes
- Get detailed VM configuration and status
- Start, stop, reboot, suspend, and resume virtual machines
- Create new virtual machines with basic or advanced configuration
- Clone existing virtual machines
- Delete virtual machines
- Modify VM resource allocation
- Monitor VM performance metrics
- Manage VM snapshots
- Plan VM deployment strategies
- Optimize resource allocation
When to use this skill
Use this skill when you need to:
- Check VM status and configuration
- Manage VM lifecycle (start/stop/reboot)
- Monitor VM performance and resource usage
- Adjust VM resources (CPU, memory, storage)
- Create new virtual machines
- Troubleshoot VM issues
- Plan VM migrations
- Optimize VM placement
Available Tools
get_vms - List all VMs on a specific node
get_vm_status - Get detailed VM status and configuration
get_vm_config - Get full VM configuration details
start_vm - Start a virtual machine
stop_vm - Stop a VM immediately
shutdown_vm - Gracefully shutdown a VM
reboot_vm - Reboot a virtual machine
suspend_vm - Suspend (pause) a running VM
resume_vm - Resume a suspended VM
create_vm - Create a new virtual machine with basic configuration
create_vm_advanced - Create a VM with advanced configuration options
clone_vm - Clone an existing virtual machine
update_vm_config - Update VM configuration (resources, options, mark as template)
delete_vm - Delete a virtual machine
Template VM Creation
Creating template VMs allows you to quickly deploy preconfigured virtual machines:
Workflow: Create a Template VM
-
Create or prepare a base VM
- Use
create_vm_advanced or clone from an existing VM
- Install and configure the OS and applications
- Test thoroughly before templating
-
Update VM as Template
- Use
update_vm_config with template: 1 to mark as template
{
"template": 1
}
-
Clone from Template
- Use
clone_vm to create instances from the template
- Template VMs cannot be directly used as running instances
- Each clone becomes a full, independent VM
Example: Mark VM as Template
update_vm_config(node="pve2", vmid=100, config={"template": 1})
Example: Clone from Template
clone_vm(node="pve2", source_vmid=100, new_vmid=200, new_name="web-server-01", full=true)
Typical Workflows
VM Lifecycle Management
- Use
get_vms to list available VMs
- Use
get_vm_status or get_vm_config to check VM state
- Use start/stop/reboot/suspend/resume to manage VM operations
- Monitor VM health during changes
VM Creation & Configuration
- Use
create_vm or create_vm_advanced to provision new VM
- Use
get_vm_status to verify configuration
- Use
clone_vm to create copies for testing or deployment
- Use
get_vm_config to review detailed settings
- Document VM details for reference
VM Lifecycle Operations
- Use
suspend_vm to pause a running VM (preserves state)
- Use
resume_vm to resume operations from suspended state
- Use
shutdown_vm for graceful shutdown
- Use
reboot_vm to restart VM
- Use
stop_vm for immediate termination if needed
VM Troubleshooting
- Use
get_vm_status to check VM health
- Use reboot/restart to recover from issues
- Use snapshots to rollback problematic changes
- Analyze performance metrics for root cause
Example Questions
- "List all VMs on the production node"
- "What's the status and resource usage of VM 100?"
- "Get the full configuration of VM 105"
- "Start the web server VM"
- "Create a new VM with 4 cores and 8GB RAM"
- "Clone VM 100 to create a test copy"
- "Mark VM 100 as a template for future deployments"
- "Clone the template VM 100 to create web-server-01"
- "Update VM 105 to use 16GB RAM"
- "Suspend VM 200 for maintenance"
- "Resume VM 200 to continue operations"
- "Gracefully shutdown VM 150"
- "Delete VM 199 and remove all data"
Response Format
When using this skill, I provide:
- VM listings with status and resource allocation
- Detailed VM configuration and performance metrics
- Status confirmations for VM operations
- Resource utilization analysis
- Optimization recommendations
Best Practices
- Monitor VM performance regularly
- Use cloning for quick VM deployment
- Create VMs with appropriate resource allocation
- Use suspend/resume for temporary pauses
- Use graceful shutdown to minimize data loss
- Plan resource allocation carefully
- Balance VMs across nodes
- Implement high-availability for critical VMs
- Keep VM templates updated
- Document VM configuration and purpose
- Test changes in non-production first
- Monitor disk usage to prevent full disks
- Clean up unused VMs to conserve resources