v0.3.10

kubernetes-sigs/agent-sandboxv0.3.10Apr 8, 2026by justinsb

AI Summary

SandboxWarmPool now creates Sandbox CRs instead of bare Pods, introduces lifecycle policies, storage support, and Go SDK with native Kubernetes client.

Key Highlights

  • SandboxWarmPool creates Sandbox CRs instead of bare Pods
  • Website redesign and comprehensive documentation overhaul
  • DeleteForeground shutdown policy for SandboxClaim
  • New metrics: agent_sandbox_creation_latency_ms and agent_sandboxes point-in-time
  • Native Go sandbox client SDK with typed Kubernetes patterns

Breaking Changes

  • SandboxWarmPool creates Sandbox CRs instead of bare Pods - existing warm pool pods orphaned
  • SandboxClaim status.Name renamed to status.name for Kubernetes naming conventions

New Features

  • Sandbox CR creation from warm pool
  • DeleteForeground shutdown policy
  • volumeClaimTemplates support
  • Go sandbox client SDK
  • PodIPs in Sandbox and SandboxClaim status
  • ClusterLoader2 performance testing

Full Release Notes

## ⚠️ Breaking Changes
* SandboxWarmPool now creates Sandbox CRs instead of bare Pods. Existing warm pool pods from previous versions will be orphaned and **should be manually deleted** (`kubectl delete pods --all-namespaces -l "agents.x-k8s.io/pool,!agents.x-k8s.io/sandbox-name-hash"`). This also means the Sandbox created from the SandboxWarmPool will have a random suffix in its name, instead of matching SandboxClaim.
* SandboxClaim `status.Name` is renamed to `status.name` to follow Kubernetes naming conventions.

## What's Changed
* Langchain updates - Issue #344 by @aleks-stefanovic in https://github.com/kubernetes-sigs/agent-sandbox/pull/355
* Add a load test script file which will be called by the periodic prow job by @SHRUTI6991 in https://github.com/kubernetes-sigs/agent-sandbox/pull/402
* add more people as approvers to sub folders by @aditya-shantanu in https://github.com/kubernetes-sigs/agent-sandbox/pull/406
* perf(warmpool): implement server-side apply status patch by @vicentefb in https://github.com/kubernetes-sigs/agent-sandbox/pull/387
* Improving docs by @janetkuo in https://github.com/kubernetes-sigs/agent-sandbox/pull/423
* Added Architecture by @yashasvimisra2798 in https://github.com/kubernetes-sigs/agent-sandbox/pull/380
* [Part 1] Create a new Persistent Sandbox Handle by @SHRUTI6991 in https://github.com/kubernetes-sigs/agent-sandbox/pull/382
* Add `selector` field to status / scale sub-resources. by @juli4n in https://github.com/kubernetes-sigs/agent-sandbox/pull/417
* Add Barni as an overall approver. by @aditya-shantanu in https://github.com/kubernetes-sigs/agent-sandbox/pull/429
* Improve sandboxclaim controller management of multiple worker threads by @igooch in https://github.com/kubernetes-sigs/agent-sandbox/pull/391
* Concurrency tests: Turn up concurrency on the controllers and do E2E tests. by @aditya-shantanu in https://github.com/kubernetes-sigs/agent-sandbox/pull/398
* Implement is_restored_from_snapshot method in PodSnapshotSandboxClient by @shrutiyam-glitch in https://github.com/kubernetes-sigs/agent-sandbox/pull/415
* Document prow process managed outside of repo by @janetkuo in https://github.com/kubernetes-sigs/agent-sandbox/pull/434
* feat: add kube-api-linter checker by @dongjiang1989 in https://github.com/kubernetes-sigs/agent-sandbox/pull/421
* feat: implement agent_sandbox_creation_latency_ms metric by @chw120 in https://github.com/kubernetes-sigs/agent-sandbox/pull/425
* refactor: warm pool creates full Sandbox CRs instead of bare pods by @noeljackson in https://github.com/kubernetes-sigs/agent-sandbox/pull/395
* fix: update comment for Selector field in SandboxWarmPoolStatus by @yongruilin in https://github.com/kubernetes-sigs/agent-sandbox/pull/438
* Adds new logo and reference in README by @brandonroyal in https://github.com/kubernetes-sigs/agent-sandbox/pull/447
* fixed broken icon links on README and site by @brandonroyal in https://github.com/kubernetes-sigs/agent-sandbox/pull/450
* Re-Implement worker thread collision avoidance for warm pool adoption by @igooch in https://github.com/kubernetes-sigs/agent-sandbox/pull/437
* feat|fix: add fix-gomod presubmit to verify go modules are tidy by @yongruilin in https://github.com/kubernetes-sigs/agent-sandbox/pull/442
* Fixes issues with mermaid website rendering by @brandonroyal in https://github.com/kubernetes-sigs/agent-sandbox/pull/451
* fix: fix broken links and mermaid diagram on doc website by @yongruilin in https://github.com/kubernetes-sigs/agent-sandbox/pull/452
* feat: implement agent_sandboxes point-in-time metrics by @chw120 in https://github.com/kubernetes-sigs/agent-sandbox/pull/410
* Load test recipes with cluster loader 2. by @SHRUTI6991 in https://github.com/kubernetes-sigs/agent-sandbox/pull/267
* Update OpenClaw example by @janetkuo in https://github.com/kubernetes-sigs/agent-sandbox/pull/471
* tests: fix timing flake in TestSandboxShutdownTime by @igooch in https://github.com/kubernetes-sigs/agent-sandbox/pull/473
* feat(test): Add ClusterLoader2 performance test by @igooch in https://github.com/kubernetes-sigs/agent-sandbox/pull/468
* Change(crd): rename 'Name' to 'name' in sandboxclaim_types CRD by @dongjiang1989 in https://github.com/kubernetes-sigs/agent-sandbox/pull/440
* Implementation 2: Integrate Sandbox handle with SandboxClient. by @SHRUTI6991 in https://github.com/kubernetes-sigs/agent-sandbox/pull/467
* Add DeleteForeground shutdown policy for SandboxClaim by @yongruilin in https://github.com/kubernetes-sigs/agent-sandbox/pull/480
* Add documentation to run prow job locally for testing. by @SHRUTI6991 in https://github.com/kubernetes-sigs/agent-sandbox/pull/472
* Add aditya-shantanu as an additional approver for test + site folder by @aditya-shantanu in https://github.com/kubernetes-sigs/agent-sandbox/pull/495
* add log to show concurrency settings by @aditya-shantanu in https://github.com/kubernetes-sigs/agent-sandbox/pull/496
* add specific exceptions from `RuntimeException` in `SandboxClient` by @nadolskit in https://github.com/kubernetes-sigs/agent-sandbox/pull/427
* Add debug logging to SandboxClaim controller by @igooch in https://github.com/kubernetes-sigs/agent-sandbox/pull/498
* Fix documentation to reflect the new sandbox client update. by @SHRUTI6991 in https://github.com/kubernetes-sigs/agent-sandbox/pull/499
* Website Redesign by @moficodes in https://github.com/kubernetes-sigs/agent-sandbox/pull/200
* Website reorg + fixing all the links by @aleks-stefanovic in https://github.com/kubernetes-sigs/agent-sandbox/pull/257
* Minor fixes for website overview page bug by @aleks-stefanovic in https://github.com/kubernetes-sigs/agent-sandbox/pull/506
* feat: add claim_labels support to SandboxClient by @jabra in https://github.com/kubernetes-sigs/agent-sandbox/pull/492
* versionbump: google.golang.org/grpc v1.79.3 by @Oneimu in https://github.com/kubernetes-sigs/agent-sandbox/pull/441
* Change `sort` to `slices` package by @dongjiang1989 in https://github.com/kubernetes-sigs/agent-sandbox/pull/503
* Allow sandbox claim to specify whether to get pod from sandbox warm pool by @PersistentJZH in https://github.com/kubernetes-sigs/agent-sandbox/pull/212
* Update Chrome sandbox README with e2e usage and Sandbox CRD context by @yashasvimisra2798 in https://github.com/kubernetes-sigs/agent-sandbox/pull/476
* add support for AKS Sandbox via vscode-sandbox example by @devigned in https://github.com/kubernetes-sigs/agent-sandbox/pull/236
* Add `None` handling to sandbox/gateway/snapshot `wait` by @nadolskit in https://github.com/kubernetes-sigs/agent-sandbox/pull/414
* add analytics guide by @drogovozDP in https://github.com/kubernetes-sigs/agent-sandbox/pull/184
* feat: Add an example of using Agent Sandbox and Kata on GKE cluster by @maqiuyujoyce in https://github.com/kubernetes-sigs/agent-sandbox/pull/230
* feat: add KEP-0174 for label and annotation propagation to sandbox pods by @chw120 in https://github.com/kubernetes-sigs/agent-sandbox/pull/439
* fix: add pvc annotations/labels from volume claim tpl by @dhenkel92 in https://github.com/kubernetes-sigs/agent-sandbox/pull/217
* Add replicas default value in sandbox crd by @dongjiang1989 in https://github.com/kubernetes-sigs/agent-sandbox/pull/456
* Add a micro benchmark for using SandboxClaims with Chrome Sandbox. by @aditya-shantanu in https://github.com/kubernetes-sigs/agent-sandbox/pull/353
* Unify SandboxPodNameAnnotation setting by @hzxuzhonghu in https://github.com/kubernetes-sigs/agent-sandbox/pull/272
* tests: print object state after waiting for predicate by @justinsb in https://github.com/kubernetes-sigs/agent-sandbox/pull/520
* Migrate to controller-runtime v0.23+ Event Recorder API by @dongjiang1989 in https://github.com/kubernetes-sigs/agent-sandbox/pull/458
* feat: add PodIPs to Sandbox and SandboxClaim status by @noeljackson in https://github.com/kubernetes-sigs/agent-sandbox/pull/518
* feat: add Go sandbox client SDK by @wllbo in https://github.com/kubernetes-sigs/agent-sandbox/pull/424
* fix: verify pod ownership before operating on annotated pods by @ArmandoHerra in https://github.com/kubernetes-sigs/agent-sandbox/pull/419
* optimization: replace .Update() with .Patch() for sandbox updateStatus by @vicentefb in https://github.com/kubernetes-sigs/agent-sandbox/pull/509
* Implement list and delete snapshot functionality in Python SDK by @shrutiyam-glitch in https://github.com/kubernetes-sigs/agent-sandbox/pull/448
* fix(python): add backward compatibility for SandboxClaim status.sandbox.Name by @kincoy in https://github.com/kubernetes-sigs/agent-sandbox/pull/515
* Add ControllerStartupLatency metric for SandboxClaims by @igooch in https://github.com/kubernetes-sigs/agent-sandbox/pull/522

## New Contributors
* @yashasvimisra2798 made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/380
* @juli4n made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/417
* @chw120 made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/425
* @noeljackson made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/395
* @brandonroyal made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/447
* @nadolskit made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/427
* @moficodes made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/200
* @jabra made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/492
* @PersistentJZH made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/212
* @devigned made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/236
* @drogovozDP made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/184
* @maqiuyujoyce made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/230
* @dhenkel92 made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/217
* @wllbo made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/424
* @ArmandoHerra made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/419
* @kincoy made their first contribution in https://github.com/kubernetes-sigs/agent-sandbox/pull/515

**Full Changelog**: https://github.com/kubernetes-sigs/agent-sandbox/compare/v0.2.1...v0.3.10