🚀 GoLV-VM
GoLV-VM est un SDK Python pour la gestion de VMs sécurisées et l'exécution de commandes via un agent intelligent.
Il permet de créer, configurer et exécuter des commandes sur des VMs distantes de manière simple et sécurisée, prêt pour l'intégration avec IA et automation.
⚡ Features
- ✅ Création et gestion de VMs (Ubuntu, Debian, Python-Dev, NodeJS, Docker, Wordpress)
- ✅ SDK facile à utiliser (
GoLVSetup) - ✅ Agent sécurisé pour exécuter des commandes avec filtrage et sécurité
- ✅ Support pour exécuter du code Python et des commandes Git
- ✅ Commandes prédéfinies pour automatiser vos VMs
- ✅ Gestion des erreurs et sécurité avancée (commandes interdites, longueur maximale, etc.)
📦 Installation
Cloner le repo
git clone https://github.com/gopu-inc/GoLV-VM.git
cd GoLV-VM
# Installer en mode editable
pip install -e .
via python
pip install golv
🧰 Usage
Initialisation du SDK
from golv import GoLVSetup, VMType
# Initialiser le SDK
setup = GoLVSetup(api_key="votre_clef_api")
client = setup.get_client()
# Créer une VM Ubuntu par défaut
vm_config = setup.create_default_vm("ma-vm")
vm = client.create_vm(vm_config)
print("VM créée:", vm)
Création d’un agent sécurisé
from golv import GoLVSetup
setup = GoLVSetup(api_key="votre_clef_api")
# Créer un agent avec commandes autorisées
agent = setup.create_agent(
allowed_commands=["echo", "python", "git"]
)
# Exécuter une commande
result = agent.execute("echo 'Hello GoLV'")
print(result.output)
# Exécuter du code Python
py_result = agent.execute_python("print('Hello from Python')")
print(py_result.output)
Commandes sécurisées et prédéfinies
# Commande prédéfinie (ex: list_files)
predef = agent.predefined("list_files")
print(predef.output)
# Gestion des erreurs de sécurité
try:
agent.execute("rm -rf /")
except Exception as e:
print("Sécurité:", e)
📊 Structure du SDK
golv/
├── __init__.py # Expose GoLVSetup, Client, Agent, Exceptions
├── client.py # Client HTTP pour API GoLV
├── agent.py # Agent sécurisé pour exécution de commandes
├── models.py # Dataclasses VMConfig, CommandResult, VMType...
├── exceptions.py # Gestion des erreurs et sécurité
└── setup_golv.py # Classe GoLVSetup (point d'entrée SDK)
🛡️ Sécurité
Commandes interdites détectées automatiquement (rm -rf, shutdown, etc.)
Longueur maximale des commandes configurable
Liste blanche de commandes autorisées
Agent isolé et sécurisé pour exécution IA
🧪 Tests
python test_golv_sdk.py
Ce script teste :
Création de VM
Agent sécurisé
Exécution de commandes (echo, Python, Git)
Sécurité et exceptions
Commandes prédéfinies
🔗 Liens
📄 License
MIT © GOPU.inc
Metadata
Release files for golv 1.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| golv-1.1.0.tar.gz | 10.8 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| golv-1.1.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 21.6 kB
Release files / golv-1.1.0.tar.gz
| Download URL | golv-1.1.0.tar.gz |
|---|---|
| Size | 10.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
b230f2e22c556da6c2dcc210afabedd042627c61f557ce9e6a6cbb3161d886b5
|
|
BLAKE2b-256 checksum How to use checksums |
ae35e3d39f7b32f8b7e1972061c5bf78088de2f41a8147fa1d2f90e012f0ce1d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.12
|
Release files / golv-1.1.0-py3-none-any.whl
| Download URL | golv-1.1.0-py3-none-any.whl |
|---|---|
| Size | 10.8 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
02aec945a68ac93887c0001db31b3e602f61ed69b1e1ca1fac7ce32a92d5f048
|
|
BLAKE2b-256 checksum How to use checksums |
689bcceda285469151bacbebc8879a451039be719ccb2b39d4725289860803af
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.2.0 CPython/3.12.12
|