Bilingue: FR | EN
- Crée et gère vos VPS Proxmox directement depuis Discord.
- Exécute des commandes SSH (sudo, pipes, multi‑lignes, PTY).
- Sécurisé: suppression des messages texte contenant des mots de passe.
- Assistant de création VPS (cloud‑init)
- Liste / statut / actions (start | stop | restart)
- SSH avec:
- bash -lc (pipes, &&, redirections, env)
- PTY activé
- sudo -S auto si pas root + bouton « Devenir root »
- Modal multi‑lignes
- Timeouts auto et personnalisables
- Troncature propre pour Discord
Prérequis
- Node.js 18+
- Accès API Proxmox (token)
- Bot Discord (token)
Configuration .env
DISCORD_TOKEN=...
PVE_HOST=https://votre-proxmox:8006
PVE_TOKENID=username@pam!tokenname
PVE_SECRET=tokenvalue
ALLOWED_USERS=1234567890,0987654321Installer et lancer
npm install
node index.js/createvps— Assistant de création/vps list— Liste les VPS/vps status vmid:<id>— Statut d’une VM/vps action vmid:<id> type:<start|stop|restart|delete>— Action VM/vps clone vmid:<src> newid:<id> [name:<str>] [target_node:<node>] [mode:<full|linked>] [storage:<storage>]— Cloner une VM/vps resize_disk vmid:<id> disk:<scsi0|virtio0|sata0|ide0> size:<+4G|20G|512M>— Agrandir un disque/vps adjust_resources vmid:<id> cpu_cores:<n> memory_mb:<mb>— Ajuster CPU/RAM/vps migrate vmid:<id> target_node:<node> [online:<true|false>]— Migrer une VM/vps snapshot create|list|delete|rollback ...— Gérer les snapshots/vps ssh ip:<ip> user:<user> password:<pass> [port:<22>] [cmd:<...>]/verify— Vérifie ENV, accès Proxmox, templates/stats-all— Statistiques globales/authorize userid:<id>— Autoriser un utilisateur (admin)/help— Aide bilingue FR/EN
- Unité obligatoire:
K/M/G/T. - Formats acceptés:
+4G,4G,+512M. +N<U>= croissance (ex:+4G).N<U>sans+= cible absolue: si plus grand que l’actuel, converti en delta; si ≤ actuel → erreur (Proxmox n’autorise pas la réduction).+4ou4→ erreur: unité manquante (ajoutezG/M/K/T).- Valeurs négatives → interdites.
Dans un salon:
vps ssh ip:1.2.3.4 user:root password:'pass' port:22 cmd:'uname -a'
Le message source est supprimé automatiquement.
Sans cmd, un embed propose:
- Nouvelle commande (modal multi‑lignes)
- Devenir root (équivaut à
sudo -i, persistant) - Raccourcis (statut / processus / disque / réseau)
- Fermer session
- Si vous n’êtes pas root, cliquez « Devenir root » ou préfixez par
sudo ...(le bot fournit le mot de passe viasudo -S). - Exemples:
sudo systemctl status nginx --no-pager | head -80 sudo apt update && sudo apt install -y htop
- Auto: 60s (classiques), 15min (install/update/systemctl/journalctl/&&/||)
- Personnalisé: ajoutez
#timeout=900(secondes) à la fin - Limiter la sortie:
| head -200 - L’embed tronque vers ~1500 caractères pour Discord
uname -a && (lsb_release -a || cat /etc/os-release)
df -h | head -50
ip -br a && ss -tuln | head -50
systemctl status nginx --no-pager | head -80
journalctl -u ssh --no-pager -n 200Vérifie: variables .env, accès API Proxmox, templates (template=1) et problèmes fréquents (Agent QEMU, disque cloud‑init, boot).
L’embed inclut un guide FR/EN pour créer un template valide.
Dans la VM (ex: 9000):
apt update
apt install -y qemu-guest-agent cloud-init
systemctl enable --now qemu-guest-agent
cloud-init clean
shutdown -h nowSur Proxmox:
qm set 9000 --agent enabled=1
# (optionnel) Ajouter un disque cloud‑init si nécessaire
qm template 9000Astuce JSON rapide (diagnostic):
qm config 9000 | awk -F': ' '{print " \"" $1 "\": \"" $2 "\","}' | sed '$ s/,$//' | sed '1s/^/{\n/;$a}'- Les TUIs plein écran (vim, nano, top, htop, less interactif) ne sont pas idéales via exec. Utilisez un vrai client SSH, ou un TTY web.
- Create and manage Proxmox VPS from Discord.
- SSH runner with sudo, pipes, multi-line, and PTY.
- Safeguard: deletes text messages containing passwords.
- Guided VPS creation (cloud‑init)
- List / status / actions
- SSH with bash -lc, PTY, sudo -S, persistent root, custom timeouts, truncation.
Environment file
DISCORD_TOKEN=...
PVE_HOST=https://your-proxmox:8006
PVE_TOKENID=username@pam!tokenname
PVE_SECRET=tokenvalue
ALLOWED_USERS=1234567890,0987654321Install & run
npm install
node index.js/createvps/vps list | status | action | delete/vps clone vmid:<src> newid:<id> [name:<str>] [target_node:<node>] [mode:<full|linked>] [storage:<storage>]/vps resize_disk vmid:<id> disk:<scsi0|virtio0|sata0|ide0> size:<+4G|20G|512M>/vps adjust_resources vmid:<id> cpu_cores:<n> memory_mb:<mb>/vps migrate vmid:<id> target_node:<node> [online:<true|false>]/vps snapshot create|list|delete|rollback .../vps ssh ip:<ip> user:<user> password:<pass> [port:<22>] [cmd:<...>]/verify/stats-all/authorize userid:<id>/help
- Unit required:
K/M/G/T. - Accepted formats:
+4G,4G,+512M. +N<U>= growth (e.g.,+4G).N<U>without+= absolute target: if greater than current, converted to delta; if ≤ current → error (shrinking unsupported).+4or4→ error: missing unit (addG/M/K/T).- Negative values → rejected.
vps ssh ip:1.2.3.4 user:root password:'pass' port:22 cmd:'uname -a'
Source message is deleted for safety.
- Become root button (
sudo -ipersistence) or prefix withsudo(password viasudo -S). - Timeouts: auto 60s/15min, override with
#timeout=900. - Limit output with
| head -200.
- Inside VM: install qemu‑guest‑agent + cloud‑init, enable agent, cloud‑init clean, shutdown.
- On Proxmox:
qm set <vmid> --agent enabled=1, thenqm template <vmid>.
- Not suited for full‑screen TUIs; use a real SSH client or a web TTY.
Création terminée / Creation completed
FR: Message de confirmation après création du VPS.
EN: Confirmation message once the VPS is created.
Création en cours / Creation in progress
FR: Le VPS est en cours de création (commande déjà exécutée).
EN: VPS is being created (command already executed).
Aperçu de commandes / Commands overview
FR: Plusieurs commandes affichées.
EN: Many commands shown.
Aperçu de commandes / Commands overview
FR: Plusieurs commandes affichées.
EN: Many commands shown.
Aperçu de commandes / Commands overview
FR: Plusieurs commandes affichées.
EN: Many commands shown.
Statistiques globales / Global statistics
FR: Commande stats-all listant toutes les statistiques Proxmox.
EN: stats-all command listing global Proxmox statistics.
Liste des VPS / VPS list
FR: Commande listant les VPS.
EN: Command showing the list of VPS.
- Ce projet est propriétaire et non libre. Tous droits réservés 2025 RIZYOX.
- Il est interdit de copier, reproduire, modifier, publier, distribuer ou créer des œuvres dérivées sans l’accord écrit préalable du créateur.
- Pour toute demande de licence/accord, contactez le propriétaire.
- This project is proprietary and not open source. All rights reserved 2025 RIZYOX.
- You may not copy, reproduce, modify, publish, distribute, or create derivative works without prior written permission from the creator.
- For licensing inquiries/permission, please contact the owner.
See LICENSE for full terms.
