ワンクリックで
ops-proxmox
Proxmox VE infrastructure with Terraform (VMs, LXC, network, storage, backup)
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Proxmox VE infrastructure with Terraform (VMs, LXC, network, storage, backup)
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Multi-agent team orchestration with native Agent Teams. Trigger when the user wants to launch a team of agents, coordinate parallel work with inter-agent communication, or use swarm mode.
Perform a thorough code review. Use when the user requests a review, wants to verify code quality, or before merging a PR.
Context transfer between AI sessions. Trigger when the user wants to save the context, resume a task, or hand off the work to another session.
API mock configuration for tests. Trigger when the user wants to mock APIs, use MSW, or test without a backend.
Debug and resolve problems. Use when the user has a bug, an error, an unexpected behavior, or wants to understand why something is not working.
TDD development with Red-Green-Refactor cycle. Use to implement a feature by writing tests BEFORE the code. Trigger automatically when the user asks for TDD, wants to write tests first, mentions "test first", or asks to implement, add, create, fix, correct code, a new feature, a bugfix, or a functionality.
| name | ops-proxmox |
| description | Proxmox VE infrastructure with Terraform (VMs, LXC, network, storage, backup) |
| allowed-tools | ["Read","Write","Edit","Bash","Glob","Grep"] |
| context | fork |
| argument-hint | [resource-type] |
Proxmox VE infrastructure management with Terraform: provisioning of virtual machines, LXC containers, network configuration, storage and backup.
This skill is automatically activated when the conversation mentions:
All Proxmox infrastructure must be managed via Terraform:
environments/
├── dev/ # Can be destroyed
├── staging/ # Mirrors prod
└── prod/ # Critical
Each environment has its own variables (terraform.tfvars), its own Terraform state and its own credentials.
modules/
├── vm/ # QEMU/KVM virtual machine
├── lxc/ # LXC container
├── network/ # Network configuration
├── storage/ # Storage configuration
└── backup/ # PBS configuration
Datacenter
├── Cluster (optional)
│ ├── Node 1 (pve1) → VMs, LXC, Storage, Network
│ ├── Node 2 (pve2)
│ └── Node 3 (pve3)
├── Storage (datacenter level)
│ ├── local, local-lvm (per node)
│ ├── nfs-shared (shared)
│ └── ceph (distributed)
└── SDN (Zones, VNets, Subnets)
| Type | Description | Use case |
|---|---|---|
| VM (QEMU) | Full virtual machine | Heavy workloads, strong isolation |
| LXC | System container | Lightweight services, high density |
| Template | Base image | Fast cloning of VMs/LXC |
| Snippet | cloud-init files | Automated configuration |
Modern, well-maintained provider, full coverage of the Proxmox API.
terraform {
required_version = ">= 1.5.0"
required_providers {
proxmox = {
source = "bpg/proxmox"
version = "~> 0.50"
}
}
}
provider "proxmox" {
endpoint = var.proxmox_endpoint
api_token = var.proxmox_api_token # Recommended token
insecure = var.proxmox_insecure # Dev only
ssh {
agent = true
username = "root"
}
}
# On the Proxmox node
pveum user token add terraform@pve terraform-token --privsep=0
# Minimal permissions
pveum aclmod / -user terraform@pve -role PVEVMAdmin
pveum aclmod /storage -user terraform@pve -role PVEDatastoreUser
Format: terraform@pve!terraform-token=xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx
| Environment | Pattern | Example |
|---|---|---|
| Production | prod-{role}-{index} | prod-web-01 |
| Staging | stg-{role}-{index} | stg-api-01 |
| Development | dev-{role}-{index} | dev-db-01 |
| Test | test-{purpose} | test-migration |
| Range | Usage |
|---|---|
| 100-199 | Infrastructure (DNS, DHCP, etc.) |
| 200-299 | Production |
| 300-399 | Staging |
| 400-499 | Development |
| 500-599 | Test/Temporary |
| 9000-9099 | Templates |
environment:prod
role:webserver
team:platform
backup:daily
managed-by:terraform
criticality:high
# Dedicated role
pveum role add TerraformRole -privs "VM.Allocate VM.Clone VM.Config.CDROM VM.Config.CPU VM.Config.Cloudinit VM.Config.Disk VM.Config.HWType VM.Config.Memory VM.Config.Network VM.Config.Options VM.Monitor VM.Audit VM.PowerMgmt Datastore.AllocateSpace Datastore.AllocateTemplate Datastore.Audit SDN.Use"
# User + assignment
pveum user add terraform@pve
pveum aclmod / -user terraform@pve -role TerraformRole
This SKILL.md section contains the core principles. For technical details with full HCL examples, see the reference files:
| File | Content |
|---|---|
references/terraform-modules.md | VM modules, LXC, usage, network, storage |
references/cloud-init.md | cloud-config templates, snippet uploads |
references/backup-ha.md | PBS schedule, commands, HA configuration |
references/troubleshooting.md | Common issues, diagnostic commands, recovery |
IMPORTANT: NEVER manage Proxmox manually via the UI. Always via Terraform.
IMPORTANT: Use unprivileged LXC by default (limited privilege escalation).
IMPORTANT: One Terraform state per environment (dev/staging/prod isolated).
YOU MUST use the bpg/proxmox provider (modern, maintained) rather than telmate/proxmox (deprecated).
YOU MUST use API tokens with minimal permissions, never root.
NEVER hardcode secrets in committed HCL. Use gitignored tfvars or Vault.
NEVER skip PBS backups on critical VMs.
This skill is based on: