Table of Contents
- Introduction
- What You Need
- Step 1: Set Up SSH Key Authentication
- Step 2: Install Qwen Code
- Step 3: Create Your Home Lab Inventory
- Step 4: Connect to Proxmox via AI
- Step 5: Create a Virtual Machine with AI
- Step 6: Create an LXC Container with AI
- Step 7: Configure Static IP via AI
- Step 8: Update Proxmox Repositories (No-Subscription)
- Step 9: Upgrade Proxmox to Latest Release
- Step 10: Safely Reboot Proxmox
- Step 11: Run a Comprehensive Health Check
- Step 12: Generate an HTML Dashboard
- Step 13: Compress Context to Save Tokens
- Complete Prompts Library (Copy & Paste)
- Bonus: AI Home Lab Tools Coming Soon
- Conclusion
Manage Your Entire Proxmox Home Lab With AI — No Linux Commands Needed
If you’ve ever managed a Proxmox Virtual Environment, you know the drill: SSH into the server, memorize qm, pct, apt, systemctl commands, edit config files manually, and pray you don’t break anything.
What if you could do all of that — in plain English?
In this comprehensive guide, I’ll show you exactly how to use Qwen Code (free and open-source) to manage your entire Proxmox home lab. We’ll cover:
- ✅ SSH key-based authentication setup
- ✅ Creating and managing Virtual Machines (VMs)
- ✅ Creating and managing LXC Containers
- ✅ Configuring static IPs automatically
- ✅ Switching from enterprise to no-subscription repositories
- ✅ Upgrading Proxmox to the latest release
- ✅ Safe reboot procedures with VM/container awareness
- ✅ Comprehensive health check dashboards
- ✅ Generating HTML monitoring reports
- ✅ Context compression to save tokens
Every single step below comes with a copy-and-paste prompt you can use right now. Let’s dive in.
🎬 Watch the full video tutorial above, or follow the step-by-step guide below.
📚 Enroll in the Full Proxmox Course →
What You Need Before We Start
- Proxmox VE installed on a server (physical or nested)
- A terminal on your local machine (macOS Terminal, Windows Terminal, or any Linux terminal)
- Qwen Code installed (free — qwen.ai)
- SSH keys generated on your local machine
- Basic understanding of what a VM and LXC container are (we’ll handle the commands)
Alternatives to Qwen Code: Claude Code, Open Code, or Codex work with the same prompts. We use Qwen Code here because it’s 100% free.
Step 1: Set Up SSH Key Authentication
Before we let AI manage our server, we need passwordless SSH access. This is a one-time setup that saves you from typing passwords every time.
Generate an SSH Key (if you don’t have one)
Open your local terminal and run:
ssh-keygen -t ed25519 -C "[email protected]" -f ~/.ssh/agent/id_ed25519_agent
This creates two files:
~/.ssh/agent/id_ed25519_agent— your private key (never share this)~/.ssh/agent/id_ed25519_agent.pub— your public key (this goes on the server)
Copy Your Public Key to Proxmox
View your public key:
cat ~/.ssh/agent/id_ed25519_agent.pub
Copy the output, then SSH into your Proxmox server and paste it into the authorized_keys file:
ssh root@YOUR_PROXMOX_IP
cd ~/.ssh
nano authorized_keys
Paste your public key at the bottom, press Ctrl+X, then Y, then Enter to save.
Now you can SSH without a password:
ssh root@YOUR_PROXMOX_IP
Step 2: Install Qwen Code
Go to qwen.ai and follow the installation instructions. It’s straightforward — download, install, and grant the permissions it asks for.
Once installed, verify it works:
qwen --version
Step 3: Create Your Home Lab Inventory
Instead of remembering IPs, usernames, and SSH paths for every server, let’s create an AI-managed inventory.
Create a project folder and launch Qwen Code:
mkdir -p ~/projects/home-lab/inventory
cd ~/projects/home-lab/inventory
qwen
Now give Qwen Code your first prompt:
Create a list of my home lab servers so that you can call them whenever I ask. The first server is: - Name: Proxmox Virtual Environment - IP: 10.11.12.51 - Login method: SSH - User: root - SSH key location: ~/.ssh/agent (use the public key) Save this as an inventory file. Create a servers.md file in this folder to reference later. Save it in your memory so you always remember these servers.
Qwen Code will create servers.md and .qwen.md (its memory file). Now every future conversation remembers your server details.
Step 4: Connect to Proxmox via AI
Now the magic begins. Instead of manually SSH-ing and running commands, just ask:
Connect me to my Proxmox server and tell me the current status — hostname, Proxmox version, kernel version, and uptime.
Qwen Code will SSH in, gather the info, and present you a clean summary. No need to type pveversion, uname -r, or uptime yourself.
Step 5: Create a Virtual Machine with AI
Here’s where it gets powerful. Ask Qwen Code to create an entire VM:
Create a new virtual machine on my Proxmox server with the following specs: - 4 GB RAM - 4 vCPUs - 32 GB storage on the default storage First, check what ISO images are available. If Ubuntu 24.04 LTS is not available, download it. Then create the VM and start it. Let me know the VM ID and status when done.
The AI will:
- Check available storage (local, local-lvm, etc.)
- Check for available ISO images
- Download Ubuntu 24.04 if missing
- Create VM ID 100 with your specs
- Attach the ISO and start the VM
- Report back with the VM status
Bonus: Check Existing VMs
Give me a list of all virtual machines on my Proxmox server, including their VM ID, name, status, RAM, CPU, and storage.
Step 6: Create an LXC Container with AI
LXC containers are lighter than VMs and boot instantly. Let the AI handle it:
Create a new LXC container on my Proxmox server using the Ubuntu 24.04 template. Use default resource allocation. Once created, give me the container ID, IP address, and status.
SSH into the LXC Container Automatically
Log me into the LXC container. Copy my SSH public key (~/.ssh/agent) into the container so I can access it directly via SSH. Confirm when I have root shell access.
Get a Home Lab Summary
Give me a current home lab summary — list all VMs and LXC containers with their IDs, names, statuses, and IP addresses.
Step 7: Configure Static IP via AI
By default, LXC containers get a dynamic IP via DHCP. Let’s make it static:
The LXC container (CT 101) is currently using DHCP. I want to set a static IP. Check the current IP address and configure it as a static IP in the Proxmox LXC network settings. Then verify it's reachable and update the inventory file with the new static IP.
The AI will:
- Check the current DHCP-assigned IP
- Update the LXC network config with a static IP
- Verify connectivity
- Update your
servers.mdinventory
Step 8: Switch from Enterprise to No-Subscription Repository
If you don’t have a Proxmox enterprise subscription, the enterprise repo will throw authentication errors. Let AI fix this:
I don't have a Proxmox enterprise subscription. Disable the enterprise repository and enable the no-subscription repository so I can receive updates. Verify that apt-get update works without errors afterward.
This one prompt replaces the manual process of editing /etc/apt/sources.list.d/pve-enterprise.list and /etc/apt/sources.list.
Step 9: Upgrade Proxmox to the Latest Release
Update my Proxmox server to the latest release. I don't have an enterprise subscription but I still want all available updates. Run the full upgrade process and report the new version number when complete.
The AI will run apt update && apt dist-upgrade -y, handle service restarts, and tell you if a kernel update requires a reboot.
Step 10: Safely Reboot Proxmox
Rebooting a hypervisor is risky. Let AI handle it safely:
The Proxmox server needs a reboot for the new kernel. Before rebooting: 1. Check all running VMs and LXC containers 2. Shut them down gracefully 3. Wait 30 seconds after reboot for SSH to come back 4. Verify the server is online with the new kernel 5. Report the status of all VMs and containers after reboot
Step 11: Run a Comprehensive Health Check
After any major change, verify everything is healthy:
Run a comprehensive health check on my Proxmox server. Report: - Proxmox version and kernel version - Uptime - Disk usage for all storage pools - Total and available RAM - CPU model, cores, and current load - Network interfaces and IP addresses - All running, stopped, and inactive services - VM and container status - Any warnings or recommendations Highlight anything that needs attention.
Step 12: Generate an HTML Dashboard
Want a visual dashboard without installing Grafana or Prometheus? AI can generate one:
Generate a comprehensive HTML file with a dark-themed, professional dashboard for my Proxmox server. Include: - System overview (version, kernel, uptime) - CPU stats (model, cores, load) - Memory usage (total, used, free) - Storage pools (name, total, used, available, percentage) - Network interfaces and IPs - Security audit (SSH config, repository status, firewall status) - VM and container status table - Backup job status and recommendations - Services overview (active, inactive, warnings) Make it a single self-contained HTML file with inline CSS, professional dark theme, and clean typography. Save it in my project folder.
Open the generated HTML file in your browser and you have an instant dashboard — no Grafana, no Prometheus, no setup.
Step 13: Compress Context to Save Tokens
As your AI session grows, so does token consumption. Qwen Code (and similar tools) let you compress context without losing memory:
Simply type:
Compress the conversation context to save tokens. Keep all important information about my servers and configuration. Then update my inventory file and memory with the latest state.
This reduces your context window usage (e.g., from 3.6% down to 2%) while preserving critical server details in the AI’s memory.
📦 Complete Prompts Library — Copy & Paste
Here’s every prompt from this guide in one place for quick reference. Each one is self-contained and works independently.
Server Inventory
Create a list of my home lab servers so that you can call them whenever I ask.
The first server is:
- Name: Proxmox Virtual Environment
- IP: 10.11.12.51
- Login method: SSH
- User: root
- SSH key location: ~/.ssh/agent (use the public key)
Save this as an inventory file. Create a servers.md file in this folder to reference later. Save it in your memory so you always remember these servers.
Connect & Status
Connect me to my Proxmox server and tell me the current status — hostname, Proxmox version, kernel version, and uptime.
List VMs
Give me a list of all virtual machines on my Proxmox server, including their VM ID, name, status, RAM, CPU, and storage.
Create a VM
Create a new virtual machine on my Proxmox server with the following specs:
- 4 GB RAM
- 4 vCPUs
- 32 GB storage on the default storage
First, check what ISO images are available. If Ubuntu 24.04 LTS is not available, download it. Then create the VM and start it. Let me know the VM ID and status when done.
Create an LXC Container
Create a new LXC container on my Proxmox server using the Ubuntu 24.04 template. Use default resource allocation. Once created, give me the container ID, IP address, and status.
SSH into LXC
Log me into the LXC container. Copy my SSH public key (~/.ssh/agent) into the container so I can access it directly via SSH. Confirm when I have root shell access.
Home Lab Summary
Give me a current home lab summary — list all VMs and LXC containers with their IDs, names, statuses, and IP addresses.
Set Static IP
The LXC container (CT 101) is currently using DHCP. I want to set a static IP. Check the current IP address and configure it as a static IP in the Proxmox LXC network settings. Then verify it's reachable and update the inventory file with the new static IP.
Switch to No-Subscription Repository
I don't have a Proxmox enterprise subscription. Disable the enterprise repository and enable the no-subscription repository so I can receive updates. Verify that apt-get update works without errors afterward.
Upgrade Proxmox
Update my Proxmox server to the latest release. I don't have an enterprise subscription but I still want all available updates. Run the full upgrade process and report the new version number when complete.
Safe Reboot
The Proxmox server needs a reboot for the new kernel. Before rebooting:
1. Check all running VMs and LXC containers
2. Shut them down gracefully
3. Wait 30 seconds after reboot for SSH to come back
4. Verify the server is online with the new kernel
5. Report the status of all VMs and containers after reboot
Full Health Check
Run a comprehensive health check on my Proxmox server. Report:
- Proxmox version and kernel version
- Uptime
- Disk usage for all storage pools
- Total and available RAM
- CPU model, cores, and current load
- Network interfaces and IP addresses
- All running, stopped, and inactive services
- VM and container status
- Any warnings or recommendations
Highlight anything that needs attention.
Generate HTML Dashboard
Generate a comprehensive HTML file with a dark-themed, professional dashboard for my Proxmox server. Include:
- System overview (version, kernel, uptime)
- CPU stats (model, cores, load)
- Memory usage (total, used, free)
- Storage pools (name, total, used, available, percentage)
- Network interfaces and IPs
- Security audit (SSH config, repository status, firewall status)
- VM and container status table
- Backup job status and recommendations
- Services overview (active, inactive, warnings)
Make it a single self-contained HTML file with inline CSS, professional dark theme, and clean typography. Save it in my project folder.
Compress Context
Compress the conversation context to save tokens. Keep all important information about my servers and configuration. Then update my inventory file and memory with the latest state.
Update Inventory
Update the memory file (.qwen.md) and the inventory file (servers.md) with the latest information about my Proxmox server — including version, hostname, CPU, RAM, storage, network configuration, and all VM/container details.
Check Another Proxmox Server
Check the status of my Proxmox server at 10.11.12.101. Connect via SSH (same SSH key in ~/.ssh/agent) and give me the same health report — version, uptime, resources, VMs, and containers. Update the inventory with this server's details.
Create Proxmox Cluster
I have multiple Proxmox servers. Create a Proxmox cluster joining the server at [PRIMARY_IP] as the master node and [SECONDARY_IP] as the member node. Set up SSH key trust between nodes, verify the cluster status, and confirm both nodes are visible in the cluster.
Automated Backup Configuration
Check if any backup jobs are configured on my Proxmox server. If not, recommend a backup strategy for all VMs and containers, including schedule, storage location, and retention policy. Help me set up an automated backup job.
Container Package Update
Update all packages inside the LXC container (CT 101) to their latest versions. Show me what's being upgraded and report when complete. Also check if there are any packages on hold that need manual attention.
QEMU Guest Agent Setup
Install and configure the QEMU guest agent on VM 100 so Proxmox can properly see the VM's IP address and shutdown status. Verify it's working after installation.
🚀 Bonus: AI Home Lab Tools Coming Soon
I’m building three exciting projects that will take your home lab management to the next level:
- Proxmox Monitor — A self-hosted web dashboard where you enter your Proxmox credentials and monitor everything in real-time.
- Next Lab — A guided home lab learning platform to set up and manage your own infrastructure.
- SyncBricks Home Lab Suite — Docker-based tools for complete home lab monitoring and control.
All of these will be available on my GitHub repository. Stay tuned!
Conclusion
Qwen Code, Claude Code, Open Code, and Codex are not just coding tools. They’re powerful system administration assistants that can:
- Manage your entire Proxmox infrastructure through natural language
- Eliminate the need to memorize complex Linux commands
- Automate repetitive tasks (updates, health checks, backups)
- Generate visual dashboards without installing monitoring stacks
- Remember your server inventory across sessions
The best part? Qwen Code is completely free. You can start today with zero cost.
🎓 Want the Complete Proxmox Course?
I’ve put together a full course covering everything from Proxmox installation to advanced AI-powered management.
Have questions? Want me to cover Claude Code, Open Code, or Codex in more depth? Drop a comment below or reach out on social media. I read every comment and use your feedback to create future tutorials.