このプロジェクトについて

Containariumは、各AIエージェントに永続的でSSH到達可能なLinuxコンテナとテナント単位のネットワーク分離を提供する、オープンソースでセルフホスト可能なエージェントランタイムです。エージェント(Cursor、Claude Code、OpenCode、またはカスタムMCPクライアント)は2つのMCPサーバーを通じて自身のボックスと対話します。コンテナ内の`agent-box`サーバーは`shell_exec`、`read_file`、`write_file`、`list_directory`、`move_file`、`delete_file`、およびCIコンテキストリソースを公開し、ホスト上のプラットフォーム`mcp-server`はコンテナのライフサイクル(`create_container`、`list_containers`、`expose_port`など)を担います。同じ操作は`containarium` CLIからも利用できます。 アーキテクチャの中心は、ユーザー名によるSSHルーティングを行うsshpiperと、HTTPS/TLS終端のためにPROXYプロトコルを用いるCaddyを実行する軽量なセンチネルVM(例:GCP e2-micro)です。バックエンドプールは、Ubuntu/Rocky/RHEL上のLXC/Incusコンテナ(ZFSスナップショット、日次バックアップ、30日間保持付き)またはKubernetesポッド(StatefulSet + ヘッドレスService + デフォルト拒否NetworkPolicy、`automountServiceAccountToken:false`、restricted Pod Securityプロファイル)のいずれかです。両バックエンドは同じCLI、MCPサーフェス、JWT認証(iss/aud/jti/scopes、単回使用リフレッシュトークン、jti失効)、RBAC、REST/gRPC APIを共有します。GPUパススルーはベアメタルおよびK8s(`nvidia.com/gpu`)で動作します。 セキュリティ機能には、非特権LXC、fail2ban付きのユーザー単位プロキシアカウント、AppArmorプロファイル、オプションの`AGENTBOX_ROOT`サンドボックス、KMSエンベロープ暗号化(Vault Transit、GCP KMS)、tmpfsによるシークレット配信、SHA-256ハッシュチェーン付き監査ログ、イメージダイジェスト検証、レジストリ許可リスト、ClamAV/Trivyスキャンが含まれます。センチネルはスポットのプリエンプションを約10秒で検知し、メンテナンスページを表示し、静的IPを保持したまま約85秒で自動復旧します。 クイックスタート:`curl -fsSL https://containarium.dev/install.sh | sudo bash`でUbuntuにデーモンとIncusをインストールし、`containarium create alice --ssh-key ~/.ssh/id_ed25519.pub`でボックスを作成し、`containarium ssh-config sync`でSSHを設定し、`ssh alice agent-box`を指すMCP設定を追加し、`containarium expose-port alice --container-port 8080 --domain blog.example.com`で公開HTTPSエンドポイントを公開します。単一の`containarium quickstart alice --prompt "..." --domain ...`ですべての手順をまとめて実行できます。ライセンスはApache 2.0、CLAは不要です。