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は、エージェントがコマンドの実行、ファイルの読み書き、Webの閲覧、iOS/Androidの操作を行える、セルフホスト可能なサンドボックスを提供するオープンソースプロジェクトです。このサンドボックスは、エージェントにとってコンピューター、スマートフォン、タブレットのように使用できます。詳細は「機能」セクションをご覧ください。

このプロジェクトはgru.aiの技術に基づいています。10万件以上のエージェントジョブでテストされています。

高度なシナリオでは、k8s クラスターでサンドボックスをローカルまたはリモートで実行する機能も維持しています。

MCP の人気が高まるにつれ、Claude Desktop/Cursor などの MCP クライアントに直接統合しやすくするために、MCP サーバーも実装しました。

特徴

  1. ターミナル
    • 任意のLinuxコマンドを実行する
    • Pythonスクリプトを直接実行する
    • 呼び出し間でセッションを共有する [開発中]
  2. ファイル
    • ホストマシンのフォルダをサンドボックスにマウントする
    • http リンクを介してサンドボックス ファイルにアクセスする
    • マルチモーダルでファイルの内容を読み取る
    • ファイルの書き込み/再書き込み
    • ファイル編集 [開発中]
    • ファイルの検索 [開発中]
  3. ブラウザ
    • 任意のURLを開き、マルチモーダルでコンテンツを返す
    • 任意のURLからダウンロード [開発中]
    • 指示に従ってブラウザを操作する [開発中]
    • 人間による支配 [未開発]
  4. HTTPサーバー
    • 任意のフォルダでオンデマンドで http サービスを開始する [開発中]
  5. SDK
    • Python SDK: pip install pygboxを使用してインストールします。詳細はPyPIを参照してください。
    • タイプスクリプトSDK
  6. MCP
    • 標準MCPサポート
    • Claude Desktopとカーソルを統合

gboxをSDKとして使用する

Python SDK

pip install pygbox

Python SDKドキュメント

タイプスクリプトSDK

npm install @gru/gbox

Typescript SDK ドキュメント

gboxをCLIとして使用する

インストール

システム要件

注: 他のプラットフォーム (Linux、Windows) のサポートも近日中に提供される予定です。

インストール手順

# 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

更新手順

# 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

コマンドラインの使用

このプロジェクトでは、サンドボックス コンテナを管理するためのコマンドライン ツールgboxが提供されています。

# 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

ボリュームマウント

gbox box createコマンドは、 -vまたは--volumeフラグを使用した Docker 互換のボリュームマウントをサポートしています。これにより、ホストシステムとサンドボックスコンテナ間でファイルとディレクトリを共有できます。

ボリュームマウント構文は次の形式に従います。

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

どこ:

  • /host/path : ホストシステム上のファイルまたはディレクトリへのパス
  • /container/path : コンテナ内でファイルまたはディレクトリがマウントされるパス
  • ro (オプション): マウントを読み取り専用にする
  • propagation (オプション):マウントの伝播モード(private、rprivate、shared、rshared、slave、rslave)を設定します。

例:

# 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

注: コンテナを作成する前にホストパスが存在している必要があります。コンテナパスが存在しない場合は自動的に作成されます。

MCPのユースケース

Claude DesktopなどのAIクライアントはgbox MCPを使用して、次のようなより良い結果を提供します。

1. 図表の生成

テスラの株価の図表を生成します: https://claude.ai/share/34de8ca3-4e04-441b-9e79-5875fa9fc97a

2. PDFの生成

最新の AI ニュースの PDF を生成します: https://claude.ai/share/84600933-dcf2-44be-a2fd-7f49540db57a

3. 分析と計算

Nvidia/Teslaの時価総額を分析・比較します。 https://claude.ai/share/70c335b7-9fff-4ee7-8459-e6b7462d8994

4. ローカルファイルの処理

ダウンロードフォルダ内の画像を見つけて、zip に圧縮します。 https://claude.ai/share/f8c4c617-9b32-4062-a8e2-2ab33ef46f42

5.任意のタスクを実行する

YouTubeビデオをダウンロード: https://claude.ai/share/c2ab6bcb-7032-489f-87d5-cc38f72c2ca9

gboxを開発する

前提条件

  • Go 1.21以降
  • Dockerデスクトップ
  • 作る
  • pnpm (corepack経由)
  • Node.js 16.13以降

建てる

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

サービスの実行

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

貢献

貢献を歓迎します!お気軽にプルリクエストを送信してください。大きな変更については、まずイシューを開いて、変更したい点についてご相談ください。

  1. リポジトリをフォークする
  2. 機能ブランチを作成します( git checkout -b username/feature-name
  3. 変更をコミットします( git commit -m 'Add some feature'
  4. ブランチにプッシュする ( git push origin username/feature-name )
  5. プルリクエストを開く

ローカルでの開発とデバッグについて知っておくべきこと

システムにインストールされた環境ではなく、開発環境で gbox を実行する方法
  1. gbox cleanupを実行して、インストール済みの gbox を停止します。これにより API サーバーが停止し、開発環境で API サーバーを実行できるようになります。
  2. プロジェクト ルートでmake api-devを実行します。
  3. ./gbox box listを実行します。これは開発環境から実行されるコマンドです。
Claude DesktopなどのMCPクライアントを開発環境でMCPサーバーに接続する方法
  1. プロジェクト ルートでmake mcp-devを実行します。
  2. ./gbox mcp export --merge-to claude実行します。
MCP検査を開く方法
  1. プロジェクト ルートでmake mcp-inspectを実行します。
  2. ターミナルに返されたリンクをクリックします。
開発環境でイメージをビルドして使用する方法
  1. Python イメージをビルドするにはプロジェクト ルートでmake build-image-pythonを実行し、すべてのイメージをビルドするにはmake build-imagesします。
  2. 必要に応じてイメージ名を変更します (例: TypeScript イメージの場合はmake build-image-typescript )。
  3. 新しいイメージを有効にするには、現在のサンドボックスを削除する必要があるかもしれません./gbox box delete --all
MCP クライアントが古い MCP コンテンツを取得するのはなぜですか?
  1. ツール定義などの MCP 設定を変更した後は、 make buildを実行してdist/index.jsファイルを更新する必要があります。
  2. ./gbox mcp export --merge-to claudeを実行する必要があるかもしれません。

ライセンス

このプロジェクトは、Apache License 2.0 に基づいてライセンスされています。詳細については、 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) は、MCP 統合やその他の AI エージェントの使用例向けに自己ホスト可能なサンドボックスを提供するオープン ソース プロジェクトです。

  1. 特徴
    1. gboxをSDKとして使用する
      1. Python SDK
      2. タイプスクリプトSDK
    2. gboxをCLIとして使用する
      1. インストール
        1. システム要件
        2. インストール手順
        3. 更新手順
        4. コマンドラインの使用
        5. ボリュームマウント
      2. MCPのユースケース
        1. 図表の生成
        2. PDFの生成
        3. 分析と計算
        4. ローカルファイルの処理
        5. 5.任意のタスクを実行する
      3. gboxを開発する
        1. 前提条件
        2. 建てる
        3. サービスの実行
        4. 貢献
        5. ローカルでの開発とデバッグについて知っておくべきこと
      4. ライセンス

        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