Skip to main content

🚀 GoLV-VM

GoLV Platform Vercel Deployment PyPI Version Python Version Build Status License Coverage

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

GitHub Repo

PyPI Package


📄 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)

Source distribution for golv 1.1.0
File Size Uploaded
golv-1.1.0.tar.gz 10.8 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for golv 1.1.0
File Interpreter ABI Platform
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

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page