rivet-dev/secure-exec
Secure Node.js Execution Without a Sandbox A lightweight library for secure Node.js execution. No containers, no VMs — just npm-compatible sandboxing out of the box.
What it solves
Secure Exec は、コンテナや仮想マシン、外部サンドボックスプロバイダーを使用せずに、信頼できない Node.js および TypeScript コードを安全に実行する方法を提供します。リソース使用が上限され、ホストへのアクセスが厳格に制御された環境でコードを記述・実行する必要がある AI エージェントのニーズに特化しています。
How it works
このライブラリは V8 isolates(Chrome のタブや Cloudflare Workers が使用しているのと同じ分離技術)を利用して、軽量な実行境界を作ります。フル OS を起動する代わりに、ホストプロセス内で仮想カーネルとシステムブリッジを介してコードを実行します。これにより、JIT コンパイルを含むネイティブ V8 パフォーマンスを保ちつつ、ネットワーク、ファイルシステム、子プロセスへのアクセスを「デフォルトで拒否」する権限モデルを維持できます。
Who it’s for
- 生成されたコードを実行する必要がある AI エージェントを構築する開発者(Vercel AI SDK、LangChain などと互換)。
- インタラクティブなコーディングプレイグラウンドやプラグインシステムを作成する開発者。
- Docker などの複雑なインフラを管理せずに、ユーザー投稿スクリプトや開発サーバー(Express や Hono など)を実行したいユーザー。
Highlights
- Zero Infrastructure:Docker デーモン、ハイパーバイザー、ベンダーアカウントは不要。npm でインストール可能。
- Granular Permissions:ファイルシステム、ネットワーク、環境変数へのアクセスはデフォルトで拒否。
- Resource Limits:CPU 時間予算とメモリ上限により、暴走コードを決定的に終了させます。
- Node.js Compatibility:
fs、http、child_processなどのコアモジュールをサポートし、動的な npm モジュールインストールも可能。 - High Efficiency:従来のコンテナベースサンドボックスに比べ、コールドスタート時間とメモリフットプリントが大幅に低減。