gbox

by babelcloud

Integrations

  • Provides a sandboxed Python environment for executing code and scripts.

  • Offers a sandboxed TypeScript environment for code execution.

  • Enables downloading YouTube videos through the MCP server integration.

gbox

gbox ist ein Open-Source-Projekt, das eine selbsthostbare Sandbox für Agenten bereitstellt, um Befehle auszuführen, Dateien zu lesen/schreiben, im Internet zu surfen und iOS/Android zu bedienen. Die Sandbox kann als Computer/Telefon/Pad für Agenten verwendet werden. Weitere Informationen finden Sie im Abschnitt „Funktionen“.

Dieses Projekt basiert auf der Technologie hinter gru.ai. Es wurde bei über 100.000 Agentenjobs getestet.

Für erweiterte Szenarien haben wir auch die Möglichkeit beibehalten, Sandboxen im K8S-Cluster lokal oder remote auszuführen.

Da MCP immer beliebter wird, haben wir auch einen MCP-Server implementiert, um die direkte Integration in MCP-Clients wie Claude Desktop/Cursor zu erleichtern.

Merkmale

  1. Terminal
    • Führen Sie einen beliebigen Linux-Befehl aus
    • Python-Skripte direkt ausführen
    • Sitzung über mehrere Aufrufe hinweg teilen [in Entwicklung]
  2. Datei
    • Ordner des Hostcomputers in die Sandbox einbinden
    • Zugriff auf Sandbox-Dateien über HTTP-Links
    • Dateiinhalte multimodal lesen
    • Dateien schreiben/neu schreiben
    • Dateien bearbeiten [in Entwicklung]
    • Dateien suchen [in Entwicklung]
  3. Browser
    • Öffnen Sie eine beliebige URL und geben Sie den Inhalt im Multimodalmodus zurück.
    • Download von jeder URL [in Entwicklung]
    • Browser nach Anleitung bedienen [in Entwicklung]
    • Übernahme durch den Menschen [Unterentwicklung]
  4. HTTP-Server
    • Starten Sie den HTTP-Dienst bei Bedarf für jeden Ordner [in Entwicklung]
  5. SDKs
    • Python SDK: Installieren Sie es mit pip install pygbox . Weitere Informationen finden Sie unter PyPI .
    • Typescript SDK
  6. MCP
    • Standard-MCP-Unterstützung
    • Integrieren Sie Claude Desktop & Cursor

Verwenden Sie gbox als SDK

Python SDK

pip install pygbox

Python SDK-Dokumentation

Typescript SDK

npm install @gru/gbox

Typescript SDK-Dokumentation

Verwenden Sie gbox als CLI

Installation

Systemanforderungen

Hinweis: Die Unterstützung für andere Plattformen (Linux, Windows) ist in Kürze verfügbar.

Installationsschritte

# Install via Homebrew brew tap babelcloud/gru && brew install gbox # Initialize environment gbox setup # Export MCP config and merge into Claude Desktop gbox mcp export --merge-to claude # or gbox mcp export --merge-to cursor # Restart Claude Desktop

Aktualisierungsschritte

# Update gbox to the latest version brew update && brew upgrade gbox # Update the environment gbox setup # Export and merge latest MCP config into Claude Desktop gbox mcp export --merge-to claude # or gbox mcp export --merge-to cursor # Restart Claude Desktop

Befehlszeilenverwendung

Das Projekt bietet ein Befehlszeilentool namens gbox zum Verwalten von Sandbox-Containern:

# Cluster management gbox cluster setup # Setup cluster environment gbox cluster cleanup # Cleanup cluster environment # Container management gbox box create --image python:3.9 --env "DEBUG=true" -w /app -v /host/path:/app # Create container gbox box list # List containers gbox box start <box-id> # Start container gbox box stop <box-id> # Stop container gbox box delete <box-id> # Delete container gbox box exec <box-id> -- python -c "print('Hello')" # Execute command gbox box inspect <box-id> # Inspect container # MCP configuration gbox mcp export # Export MCP configuration gbox mcp export --merge-to claude # Export and merge into Claude Desktop config gbox mcp export --dry-run # Preview merge result without applying changes

Volumenhalterungen

Der Befehl gbox box create unterstützt Docker-kompatible Volume-Mounts mit dem Flag -v oder --volume . Dadurch können Sie Dateien und Verzeichnisse zwischen Ihrem Hostsystem und den Sandbox-Containern teilen.

Die Syntax zum Einbinden des Volumes folgt diesem Format:

-v /host/path:/container/path[:ro][:propagation]

Wo:

  • /host/path : Pfad zu einer Datei oder einem Verzeichnis auf Ihrem Hostsystem
  • /container/path : Pfad, in dem die Datei oder das Verzeichnis im Container eingebunden wird
  • ro (optional): Macht die Einbindung schreibgeschützt
  • propagation (optional): Legt den Mount-Ausbreitungsmodus fest (privat, rprivate, shared, rshared, slave, rslave)

Beispiele:

# Basic bind mount gbox box create -v /data:/data --image python:3.9 # Read-only bind mount gbox box create -v /data:/data:ro # Multiple bind mounts gbox box create \ -v /config:/etc/myapp \ -v /data:/var/lib/myapp:ro \ -v /logs:/var/log/myapp:ro:rprivate \ --image python:3.9

Hinweis: Der Hostpfad muss vor dem Erstellen des Containers vorhanden sein. Falls er nicht vorhanden ist, wird der Containerpfad automatisch erstellt.

MCP-Anwendungsfälle

Ihr KI-Client wie Claude Desktop kann gbox MCP verwenden, um bessere Ergebnisse zu liefern, wie zum Beispiel

1. Diagramme erstellen

Erstellen Sie Diagramme der Tesla-Aktienkurse: https://claude.ai/share/34de8ca3-4e04-441b-9e79-5875fa9fc97a

2. PDFs erstellen

PDF mit den neuesten KI-Nachrichten generieren: https://claude.ai/share/84600933-dcf2-44be-a2fd-7f49540db57a

3. Analyse und Berechnung

Analysieren und vergleichen Sie die Marktkapitalisierung von Nvidia/Tesla: https://claude.ai/share/70c335b7-9fff-4ee7-8459-e6b7462d8994

4. Lokale Dateien verarbeiten

Suchen Sie im Download-Ordner nach Bildern und komprimieren Sie sie in eine ZIP-Datei. https://claude.ai/share/f8c4c617-9b32-4062-a8e2-2ab33ef46f42

5. Führen Sie beliebige Aufgaben aus

YouTube-Video herunterladen: https://claude.ai/share/c2ab6bcb-7032-489f-87d5-cc38f72c2ca9

Gbox entwickeln

Voraussetzungen

  • Go 1.21 oder höher
  • Docker Desktop
  • Machen
  • pnpm (über Corepack)
  • Node.js 16.13 oder höher

Bauen

# Build all components make build # Create distribution package make dist

Ausführen von Diensten

# API Server make -C packages/api-server dev # MCP Server cd packages/mcp-server && pnpm dev # MCP Inspector cd packages/mcp-server && pnpm inspect

Beitragen

Wir freuen uns über Beiträge! Senden Sie uns gerne einen Pull Request. Bei größeren Änderungen öffnen Sie bitte zunächst ein Issue, um Ihre Änderungswünsche zu besprechen.

  1. Forken Sie das Repository
  2. Erstellen Sie Ihren Feature-Zweig ( git checkout -b username/feature-name )
  3. Übernehmen Sie Ihre Änderungen ( git commit -m 'Add some feature' )
  4. Pushen zum Zweig ( git push origin username/feature-name )
  5. Öffnen einer Pull-Anfrage

Wissenswertes zu lokaler Entwicklung und Fehlerbehebung

So führen Sie gbox in der Entwicklungsumgebung anstelle der im System installierten aus
  1. Stoppen Sie die installierte Gbox mit gbox cleanup . Dadurch wird der API-Server gestoppt, sodass Sie ihn in der Entwicklungsumgebung ausführen können.
  2. Führen Sie make api-dev im Projektstammverzeichnis aus.
  3. Führen Sie ./gbox box list aus. Dies ist der Befehl, der von Ihrer Entwicklungsumgebung ausgeführt wird.
So verbinden Sie einen MCP-Client wie Claude Desktop mit dem MCP-Server in der Entwicklungsumgebung
  1. Führen Sie make mcp-dev im Projektstammverzeichnis aus.
  2. Führen Sie ./gbox mcp export --merge-to claude
So öffnen Sie MCP Inspect
  1. Führen Sie make mcp-inspect im Projektstamm aus.
  2. Klicken Sie auf den im Terminal zurückgegebenen Link.
So erstellen und verwenden Sie ein Image in der Entwicklungsumgebung
  1. Führen Sie make build-image-python im Projektstamm aus, um ein Python-Image zu erstellen, oder make build-images , um alle Images zu erstellen.
  2. Ändern Sie den Bildnamen nach Bedarf (z. B. make build-image-typescript für das TypeScript-Bild).
  3. Möglicherweise müssen Sie aktuelle Sandboxen löschen, damit das neue Image wirksam wird./gbox ./gbox box delete --all
Warum erhält der MCP-Client immer noch den alten MCP-Inhalt?
  1. Nachdem Sie die MCP-Konfiguration, beispielsweise Tooldefinitionen, geändert haben, müssen Sie make build ausführen, um die Datei dist/index.js zu aktualisieren.
  2. Möglicherweise müssen Sie auch ./gbox mcp export --merge-to claude ausführen

Lizenz

Dieses Projekt ist unter der Apache-Lizenz 2.0 lizenziert – Einzelheiten finden Sie in der Datei LICENSE .

-
security - not tested
A
license - permissive license
-
quality - not tested

hybrid server

The server is able to function both locally and remotely, depending on the configuration or use case.

Gru-Sandbox (gbox) ist ein Open-Source-Projekt, das eine selbst hostbare Sandbox für die MCP-Integration oder andere Anwendungsfälle von KI-Agenten bereitstellt.

  1. Merkmale
    1. Verwenden Sie gbox als SDK
      1. Python SDK
      2. Typescript SDK
    2. Verwenden Sie gbox als CLI
      1. Installation
        1. Systemanforderungen
        2. Installationsschritte
        3. Aktualisierungsschritte
        4. Befehlszeilenverwendung
        5. Volumenhalterungen
      2. MCP-Anwendungsfälle
        1. 1. Diagramme erstellen
        2. 2. PDFs erstellen
        3. 3. Analyse und Berechnung
        4. 4. Lokale Dateien verarbeiten
        5. 5. Führen Sie beliebige Aufgaben aus
      3. Gbox entwickeln
        1. Voraussetzungen
        2. Bauen
        3. Ausführen von Diensten
        4. Beitragen
        5. Wissenswertes zu lokaler Entwicklung und Fehlerbehebung
      4. Lizenz

        Related MCP Servers

        • -
          security
          A
          license
          -
          quality
          MCP server for toolhouse.ai. This does not rely on an external llm unlike the official server.
          Last updated -
          1
          Python
          MIT License
        • -
          security
          A
          license
          -
          quality
          A secure, container-based implementation of the Model Context Protocol (MCP) that provides sandboxed environments for AI systems to safely execute code, run commands, access files, and perform web operations.
          Last updated -
          4
          Python
          Apache 2.0
          • Linux
        • -
          security
          F
          license
          -
          quality
          A secure MCP server that provides controlled ShellJS access for LLMs, enabling AI systems to safely execute shell commands and interact with the filesystem within a configurable security sandbox.
          Last updated -
          JavaScript

        View all related MCP servers

        ID: 1hy7nhkq3s