AI エージェント向け Sandboxes
Lizard (lizard.build) の Sandboxes は、AI エージェントがコードやタスクを実行するための、隔離された Linux マシンです。各 sandbox は、独自のカーネルを持つ Firecracker microVM です。コードからは Lizard SDK(TypeScript 向けは @lizard-build/sdk、Python 向けは lizard-sdk)で作成するか、ターミナルで lizard sandbox create を実行します。その後、コマンドの実行、ファイルの読み書き、ポートの公開を行います。2026-10-12 のテストでは、sandbox の作成から最初の Python 出力までの時間の中央値は 228 ms でした。
Sandboxes を使う場面
- モデルが書いたコードを実行する。 呼び出し間で Python の状態を保持する コードインタープリター を LLM に与えます。
- コーディングエージェントに専用のマシンを与える。 Claude Code、OpenCode、Codex を、ノート PC ではなく sandbox 内で実行します。認証情報は
lizard agentsで接続し、プロンプトはlizard sandbox promptで送ります。 - エージェントが作ったものをプレビューする。 開発サーバーを起動し、プライベートプレビュー URL から開きます。
- 複数の方針を同時に試す。 実行中の sandbox をメモリとプロセスごと fork するか、1 つのスナップショットから多数のコピーを復元します。
- ブラウザーを操作する。
desktopテンプレートはグラフィカルなデスクトップを実行し、エージェントはスクリーンショット、クリック、キー入力で操作します。
動き続ける必要がある Web サービスやワーカーには、代わりにアプリをデプロイしてください。アプリ クイックスタート を参照してください。
sandbox の起動はどのくらい速いですか?
2026-10-12 のテストでは、sandbox の作成から最初の Python 出力までの時間の中央値は 228 ms、95 パーセンタイルは 310 ms でした。テストは Railway の US East リージョンから us-east-1 に対して、base テンプレートと Small サイズで 300 回実行しました。E2B、Daytona、Modal に対する同じテストの結果は、Sandboxes のページ に掲載しています。
Sandboxes の概要
| 質問 | 回答 |
|---|---|
| コードを実行するのは何ですか? | 独自のカーネルを持つ Firecracker microVM です。例外については ランタイムとテンプレート を参照してください |
| どうやって作成しますか? | Lizard SDK、lizard sandbox、ダッシュボード、または HTTP API |
| どのテンプレートがありますか? | base、interpreter、codex、claude、opencode、pi、prime、desktop |
| どのサイズがありますか? | Small (2 vCPU / 4 GB)、Medium (4 vCPU / 8 GB、既定)、Large (8 vCPU / 16 GB)。サイズと料金 を参照してください |
| どのくらい存続しますか? | SDK と CLI からは既定で 5 分。直接の API とダッシュボードからは既定で期限なし |
| 停止後に何が残りますか? | /workspace にマウントした Persistent Volumes 上のファイルだけです |
| 同時にいくつ実行できますか? | Pro で 100、トライアル中は 5。アカウントの上限 を参照してください |
ランタイムとテンプレート
現在のカタログからテンプレートを選びます: base、interpreter、codex、claude、opencode、pi、prime、desktop。利用可否はリージョンとプールの空き容量によって変わります。interpreter には Python と一般的なデータ処理ライブラリが含まれます。desktop はグラフィカルなデスクトップを実行し、sandbox.desktop または lizard sandbox desktop で操作します。ツールのバージョンは sandbox 内で確認してください。公開 CLI には独自テンプレートのアップロード機能はありません。
Pod ベースの Persistent Volumes を接続した sandbox や、Pod のスナップショット から復元した sandbox は、runc を使う Kubernetes Pod として実行され、ホストのカーネルを共有します。どちらで実行されているかは getInfo().runtime でわかります。信頼できないコードを実行する際は、認証情報とネットワークへのアクセスを制限してください。
ライフサイクル
sandbox を作成してコマンドを実行し、終了後に kill を呼び出します。connect は既存の sandbox に接続するだけで状態を変えないため、一時停止中や停止済みの sandbox を再開しません。一時停止、再開、snapshot、restore は利用できます。一時停止、再開、スナップショットを参照してください。fork は、メモリとプロセスを含めて実行中の sandbox をコピーします。ボリュームが接続されている場合は 409 を、Pod として実行されている sandbox では 501 を返します。ファイル監視はまだ利用できません。lizard sandbox ssh は CLI の認証情報で対話型シェルを開きます。SSH プロトコルでのアクセスはできないため、SSH クライアント、scp、ポートフォワーディングは使えません。
create -> running -> stopped (kill / expiration)
running -> paused -> running (pause / resume)
running -> new sandboxes (fork)
snapshot -> new sandbox (restore)リソースと有効期間
作成時にサイズを選びます: Small (2 vCPU / 4 GB)、Medium (4 vCPU / 8 GB、既定)、Large (8 vCPU / 16 GB)。サイズと料金を参照してください。必要に応じてリージョンを指定してください。カタログへの掲載は空き容量を保証しません。
SDK と CLI の既定の有効期間は 5 分です。API の直接呼び出しとダッシュボードでは、既定で期限を設けません。有効期間を明示してください。作成時の timeoutMs: 0 は期限を無効にし、正の値は期限を設定します。setTimeout は 1000~2147483647 ミリ秒を受け付け、0 は指定できません。コマンド実行で期限は延長されません。アイドル時間のタイマーではありません。
保存と課金
sandbox の実行中はファイルとプロセスを維持します。停止後、別の sandbox で使えるのは、接続した Persistent Volumes の /workspace に保存したファイルだけです。ボリュームがなければ /workspace は一時領域です。各ボリュームは同時に 1 つの sandbox に接続し、単一ノードに保存します。ノード障害後も必要なファイルは別の場所へ書き出してください。
各サイズは固定の時間単価で、sandbox の実行中は秒単位で課金されます。アイドル時間も含みます。送信トラフィックはアカウントごとに直近 30 日間で 2 TB まで料金に含まれます。スナップショットから復元した sandbox は、復元元と同じサイズと料金で実行されます。Pod のスナップショット から復元した sandbox は実測使用量で課金されます。一時停止中の sandbox は課金されません。Persistent Volumes はデータを保存している間、別途課金されます。タスクが終わったら sandbox を一時停止するか停止してください。すべてのリソースの料金は 請求ページ と 料金 に記載されています。
ガイド
- sandbox で Claude Code を実行する
- sandbox で OpenCode を実行する
- 開発サーバーのプレビュー URL
- LLM が生成したコード向けのコードインタープリター
- Persistent Volumes でファイルを保持する
リファレンス
- Sandboxes クイックスタート: 最初の sandbox をステップごとに作成します。
- Sandbox API と SDK リファレンス: TypeScript と Python のすべての呼び出し。
lizard sandbox: ターミナルからの作成、exec、シェル、スナップショット、コーディングエージェント。- Sandboxes ダッシュボード: ブラウザーで sandbox を作成、確認、停止します。
- 制限: サイズ、料金、同時実行数、送信トラフィック。
更新日