Files
cv4pve-cli-tui/README.md
T
DuckbootandClaude Opus 5.5 5a3ca5a216 Show configured resources on the info screen
A new "Resources" section at the top of the info screen shows CPU
cores (with sockets for VMs), memory, swap for containers, and each
disk with its size. The disks are the same ones the edit dialog
offers, so cloud-init and CD drives are left out. A container without
a cores limit shows "unlimited".

The open info screen reloads after any guest job, so values edited
with e show up straight away.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-11-02 22:42:38 +01:00

2.0 KiB

cv4pve-cli-tui

Textual TUI for cv4pve-cli: list Proxmox VE guests (VMs and LXC), start/shutdown/stop/reboot them, and change cores, memory and disk size.

It shells out to cv4pve-cli and uses its current context (cv4pve-cli config use <name>); it stores no credentials itself. Tested with cv4pve-cli 2.4.0.

Run

uv run cv4pve-tui
Key Action
s start
S shutdown (confirm)
x stop - hard power-off (confirm)
r reboot (confirm)
Enter info: resources (CPU, memory, swap, disks), backups, backup job, network (config and runtime IPs)
Enter then e in info: edit cores / memory / grow a disk (disk growth asks again; it cannot be undone)
Enter then b in info: backup now (snapshot, zstd, storage choice); a there = also show backups of earlier guests that had the same VMID
Enter then n in info: edit network (bridge, VLAN, firewall, IPv4/IPv6; VM IP via cloud-init at next boot); u there = undo the last network change of this guest (this session only)
t shell in a running LXC container (ssh -t root@<node> pct enter <vmid>)
g refresh
c switch cv4pve-cli context (cluster)
q quit

Warning: link changes (bridge, VLAN, firewall) apply immediately on a running guest and can cut its network (and DNS for others if the guest is your DNS server). IP changes on a running container may need a reboot of the container (seen: static -> DHCP gave no IPv4 until a reboot).

The shell key needs key-based root SSH to the PVE node (LXC only).

Switching context runs cv4pve-cli config use, which changes cv4pve-cli's global current context: other shells and scripts follow, and it stays after the app exits.

Empty fields in the edit dialog are left unchanged. If a CPU/memory change cannot be hot-plugged, the app tells you it applies at the next reboot.

Development

uv sync
uv run pytest

Tests mock cv4pve-cli; they never touch a cluster. Design: docs/plans/guest-tui-mvp.md.