skills/dataknifeai/vm-template-creation/SKILL.md
Create, configure, and manage VM templates in Proxmox. Build reusable VM images for rapid deployment of standardized environments, including Kubernetes clusters and managed applications.
npx skillsauth add aiskillstore/marketplace vm-template-creationInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Create, manage, and deploy VM templates in your Proxmox environment for rapid, standardized infrastructure provisioning.
This skill enables you to:
Use this skill when you need to:
create_vm_advanced - Create a VM with advanced configuration (disk, network, CD/DVD)update_vm_config - Update VM configuration and mark as templateget_vm_config - Get full VM configuration detailsclone_vm - Clone a template VM to create instancesdelete_vm - Remove a VM or templateget_vm_status - Get VM status and resource usageget_vms - List all VMs on a nodestart_vm - Start a VM (for testing/configuration)stop_vm - Stop a running VMshutdown_vm - Gracefully shut down a VMCreate a new VM with desired base configuration:
create_vm_advanced(
node_name="pve2",
vmid=100,
name="ubuntu-22.04-template",
memory=2048,
cores=2,
sockets=1,
ide2="local:iso/jammy-server-cloudimg-amd64.iso",
sata0="local-lvm:50", # 50GB disk
net0="virtio,bridge=vmbr0"
)
Once configuration is complete and tested:
update_vm_config(
node_name="pve2",
vmid=100,
config={
"template": 1
}
)
Important: Once a VM is marked as template, it cannot be started directly. It can only be cloned.
Create instances from the template:
clone_vm(
node_name="pve2",
source_vmid=100,
new_vmid=101,
new_name="web-server-01",
full=true
)
# 1. Create base VM
create_vm_advanced(
node_name="pve2",
vmid=100,
name="ubuntu-rke2-template",
memory=4096, # 4GB for control plane
cores=4,
sockets=1,
ide2="local:iso/jammy-server-cloudimg-amd64.iso",
sata0="local-lvm:100", # 100GB for system + RKE2
net0="virtio,bridge=vmbr0"
)
# 2. Boot, configure, and install:
# - OS configuration
# - Cloud-Init setup
# - RKE2 dependencies (curl, wget, etc.)
# - System optimization
# 3. Mark as template
update_vm_config(
node_name="pve2",
vmid=100,
config={"template": 1}
)
# 4. Clone for Rancher Manager cluster
clone_vm(
node_name="pve2",
source_vmid=100,
new_vmid=101,
new_name="rancher-manager-1",
full=true
)
clone_vm(
node_name="pve2",
source_vmid=100,
new_vmid=102,
new_name="rancher-manager-2",
full=true
)
clone_vm(
node_name="pve2",
source_vmid=100,
new_vmid=103,
new_name="rancher-manager-3",
full=true
)
# 5. Clone for NPRD-Apps cluster
clone_vm(
node_name="pve2",
source_vmid=100,
new_vmid=201,
new_name="nprd-apps-1",
full=true
)
clone_vm(
node_name="pve2",
source_vmid=100,
new_vmid=202,
new_name="nprd-apps-2",
full=true
)
clone_vm(
node_name="pve2",
source_vmid=100,
new_vmid=203,
new_name="nprd-apps-3",
full=true
)
When creating or updating templates, you can set:
template=1 - Mark VM as template (prevents direct boot)cores=N - Number of CPU coressockets=N - Number of CPU socketsmemory=NNNN - Memory in MBsata0="storage:size" - Primary disknet0="virtio,bridge=vmbr0" - Network configurationide2="storage:iso/image.iso" - CD/DVD drive for installationFor Cloud-Init enabled templates:
cicustom parameter for custom Cloud-Init configscurl wget vim gitupdate_vm_configdistro-version-purposeWhen using this skill, I provide:
The MCP tools complement Terraform's telmate/proxmox provider:
development
Apple Human Interface Guidelines for content display components. Use this skill when the user asks about charts component, collection view, image view, web view, color well, image well, activity view, lockup, data visualization, content display, displaying images, rendering web content, color pickers, or presenting collections of items in Apple apps. Also use when the user says how should I display charts, what's the best way to show images, should I use a web view, how do I build a grid of items, what component shows media, or how do I present a share sheet. Cross-references: hig-foundations for color/typography/accessibility, hig-patterns for data visualization patterns, hig-components-layout for structural containers, hig-platforms for platform-specific component behavior.
tools
Automate HelpDesk tasks via Rube MCP (Composio): list tickets, manage views, use canned responses, and configure custom fields. Always search tools first for current schemas.
testing
Expert Haskell engineer specializing in advanced type systems, pure functional design, and high-reliability software. Use PROACTIVELY for type-level programming, concurrency, and architecture guidance.
tools
GraphQL gives clients exactly the data they need - no more, no less. One endpoint, typed schema, introspection. But the flexibility that makes it powerful also makes it dangerous. Without proper controls, clients can craft queries that bring down your server. This skill covers schema design, resolvers, DataLoader for N+1 prevention, federation for microservices, and client integration with Apollo/urql. Key insight: GraphQL is a contract. The schema is the API documentation. Design it carefully.