先に結論
Vercel Sandbox を使っているなら、今回の GA で最初に確認すべきなのは新機能の数ではありません。何もしないと state が残る側へ default が変わったことです。
Sandbox.create() と sandbox create は、いまや persistent が標準です。以前の感覚で one-off job を回すと、filesystem が snapshot され、停止後も再開前提の sandbox として残ります。
便利になったのは事実です。ただ、影響が大きいのは次の4点です。
- one-off job でも snapshot storage が増えうる
- stopped sandbox が自動 resume する前提になる
- 長寿命 workspace では retention 設計が必要になる
- secret や生成物の残置ポリシーを見直す必要がある
何が変わったのか
Vercel は 2026年5月26日、Sandbox persistence の GA を公開しました。今回から Sandbox.create() と sandbox create は persistent default です。
persistent sandbox では、session を止めるたびに filesystem が自動 snapshot されます。次に runCommand() や writeFiles() などを呼ぶと、最新 snapshot から新しい session が自動で立ち上がります。
つまり、従来の「job が終わったら環境も消える」という前提ではなくなりました。消したい場合に opt out を書く設計へ変わったわけです。
Vercel は changelog で Sandbox.getOrCreate()、Sandbox.fork()、Sandbox.delete()、onCreate / onResume もあわせて前面に出しています。主語は単発実行ではなく、育てる workspace 寄りです。
一番先に効くのは Snapshot Storage の見直し
実務で最初に効くのは compute より storage です。
Vercel docs では、自動 snapshot は Snapshot Storage を消費し、compute とは別で課金されます。Hobby は 15GB の lifetime 枠、Pro / Enterprise は月額従量課金です。
そのため、以前と同じ job 数でも、persistent default のまま止めるだけで storage 側の請求や上限消費が増える可能性があります。npm install や build artifact を毎回作って捨てる job ほど、この差がそのまま乗ります。
one-off job で state を残す理由がないなら、Vercel が案内している通り persistent: false か --non-persistent を明示した方が安全です。
one-off job と長寿命 workspace を分けて考えるべき
今回の update で一番まずいのは、両者を同じ設定で回すことです。
CI 的な job、検証用の build-and-discard workflow、短い eval は non-persistent の方が扱いやすいです。終了時に filesystem を捨てるので、storage 課金も残置データも読みやすくなります。
逆に、coding agent の workspace、preview を何度も開く sandbox、repo clone と依存解決をやり直したくない開発環境は persistent の恩恵が大きいです。Sandbox.getOrCreate() と onResume を使うと、再起動時に dev server や cache を立て直す流れまで揃えやすくなります。
Vercel を agent runtime として比較したいなら、OpenAI Agents SDK sandbox provider 比較 もつながります。今回の記事は比較ではなく、Vercel の default 変更に絞っています。
長寿命 sandbox は4項目を決めてから使う
persistent を活かすなら、まず次の4項目を決めるべきです。
1. name
persistent sandbox は name が主キーです。同じ name をどう割り当てるかで、ユーザー単位の workspace なのか、job 単位の workspace なのかが決まります。
2. snapshotExpiration
snapshot は 30日で expire するのが標準です。短く切るのか、長く残すのかを決めないと、resume 前提の運用が急に崩れることがあります。
3. keepLastSnapshots
docs では count: 1 が推奨です。最新だけ残せば十分な sandbox まで複数世代を抱えると、storage が増える割に戻し先を使わないままになりがちです。
4. onResume
自動 resume は filesystem を戻してくれますが、background service までは勝手に整いません。dev server、watcher、キャッシュ再接続のような再起動処理は onResume でまとめた方が事故を減らせます。
stateful な sandbox を他社と比べたい読者には、AIエージェント向けSandbox比較 も補助になります。Vercel だけが persistent を持つわけではないので、長寿命 runtime を主役にするなら比較記事の方が向いています。
secret と生成物の残し方は再確認した方がいい
persistent default 化で見落としやすいのはここです。
以前は ephemeral 前提だったので、job 終了と一緒に依存物や生成物が消える設計でもそこまで困りませんでした。いまは stop 後の filesystem が snapshot されるので、token を書いた設定ファイル、生成した artifact、途中ダウンロードしたデータがそのまま次回へ残る可能性があります。
もちろん persistent 自体が危険という話ではありません。問題は、消える前提の運用メモのまま persistent を使い始めることです。
少なくとも次の点は見直した方がいいです。
- secret を sandbox 内ファイルへ置かないか
- 置くなら stop 前に消すか
- build artifact や cache をどこまで残すか
- user ごとの workspace を shared name にしていないか
いま見直すべき4点
1. Sandbox.create() を grep する
まずコードを見て、persistent を明示していない create を洗い出します。今回の変更は default 反転なので、未指定箇所がそのまま影響点です。
2. CLI job の sandbox create に --non-persistent が必要か判定する
短命 job なら、毎回明示する方が読みやすいです。後から見た人も「これは state を残さない job だ」とすぐ分かります。
3. storage と compute を別で監視する
請求や使用量を見るとき、Active CPU と Provisioned Memory だけでは足りません。Snapshot Storage が別軸で増えるので、usage review も分けて追う必要があります。
4. resume 前提の初期化を onResume へ寄せる
persistent を採用するなら、起動処理を手動で散らさない方がいいです。resume 時に必要な再初期化を hook へ寄せると、workspace が増えても挙動を揃えやすくなります。
誰に強く関係する update なのか
全 Vercel 利用者に同じ重さで効く更新ではありません。
影響が大きいのは、Vercel Sandbox を app の裏側で継続利用しているチームです。特に、AI agent、coding workflow、preview 環境、自動 build job を混ぜて回しているほど、default の反転が運用へ刺さります。
逆に、sandbox をまだ触っていない人にとっては比較検討の材料です。その場合は、Vercel plugin vs MCPサーバー vs 素のcoding agent のように、Vercel をどのレイヤーで使うかから見た方が判断しやすいです。
まとめ
Vercel Sandbox persistence の GA は、便利機能の追加で終わる update ではありません。Sandbox.create() と sandbox create の default が persistent に変わったことで、state、課金、resume、残置データの前提が一段変わりました。
- one-off job は
persistent: falseか--non-persistentを先に検討する - 長寿命 workspace は name、retention、
onResumeを設計してから使う - Snapshot Storage を compute と別で監視する
- secret と artifact の残置ポリシーを見直す
この4点を押さえれば、今回の GA はコスト事故の種ではなく、agent workspace を安定させる追い風になります。