Skip to content

AI assistants

An AI assistant that can run PowerShell 7 can use this module to answer questions about a Proxmox VE cluster and to write or run scripts for it: it finds the cmdlet it needs with Get-Command and Get-Help, reads the data from .Response.data, and checks every response. Every change goes to the cluster at once, so the skill makes the assistant show you what it would do first.

The repository ships a skill, skills/cv4pve-api-powershell/SKILL.md: a short file in the Agent Skills format that Claude Code, Codex and other assistants load when a request matches its description. It tells the assistant to:

  • connect in every command with the token in $env:PVE_API_TOKEN, and never print it;
  • check IsSuccessStatusCode of every response: a failed call does not throw;
  • before any change, run the same command with -WhatIf, show you the What if: lines, and run it only after you agree.

Install it with the skills command, which needs Node.js:

npx skills add Corsinvest/cv4pve-api-powershell

Or copy the file into the skills folder of your assistant: .claude/skills/ for Claude Code, .agents/skills/ for Codex, in the project or under your home folder:

mkdir -p .claude/skills/cv4pve-api-powershell
curl -fL -o .claude/skills/cv4pve-api-powershell/SKILL.md https://raw.githubusercontent.com/Corsinvest/cv4pve-api-powershell/master/skills/cv4pve-api-powershell/SKILL.md

The skill tells the assistant what to do; the token decides what it can do. The assistant can call any endpoint, including Invoke-PveRestApi, which has no -WhatIf, and the skill cannot prevent that. Give it a token of its own: PVEAuditor if it only reads, otherwise only the privileges and the paths the task needs (/vms/100, /pool/web): see Permissions. Set it in $env:PVE_API_TOKEN before starting the assistant, as for any script, so the token stays out of the conversation.