Skip to content

Releases: openkruise/agents

v0.3.0 release

Choose a tag to compare

@furykerry furykerry released this 15 May 02:22

这是重新组织的变更日志,按功能、修复和杂项分类:


What's Changed

Features

  • feat: add sandbox lifecycle metrics for kube-state-metrics style monitoring by @liangxiaoping in #258
  • feat: add feature gate to cache PodLabelSelector by @PersistentJZH in #259
  • feat: support inplace CPU resize for warm pool sandboxes by @PersistentJZH in #228
  • feat(sandbox-controller): support rolling update of sandboxset by @BITLiutianyang in #256
  • add e2b template list&get by @ZhaoQing7892 in #265
  • feat: support negative TTL for never delete SandboxClaim by @AiRanthem in #277
  • update labels when claiming by @furykerry in #201
  • sandbox printcolumn add claimed by @zmberg in #285
  • update pod labels when claiming by @furykerry in #288
  • add ExtensionAnnotations to InPlaceUpdateOptions by @zmberg in #289
  • feat(e2b/keys): add pluggable KeyStorage with MySQL backend by @AiRanthem in #291
  • Add gateway flow by @ZhaoQing7892 in #299
  • feat(e2b): support custom CDP port for browser use by @AiRanthem in #298
  • feat: support kruise custom api for gateway by @chengzhycn in #278
  • sandbox support recreate upgradeStrategy and lifecycle by @zmberg in #302
  • sandboxupdateops controller by @zmberg in #307
  • feat: enhance prometheus metrics observability for sandbox ecosystem by @KeyOfSpectator in #292
  • update manager metrics by @ZhaoQing7892 in #268
  • Validate SandboxSet volume claim template mounts by @ajatshatru01 in #359
  • feat(controller): consider SandboxTemplate for SandboxSet rolling update by @BITLiutianyang in #317
  • Improve claim sandbox failure diagnostics by @AiRanthem in #356
  • feat: add team-based namespace isolation and team-scoped API key authorization by @AiRanthem in #325
  • feature: skip InitRuntime when no agent-runtime configured in Sandbox by @zmberg in #340
  • add validation for TTLAfterCompleted and WaitReadyTimeout by @BH4AWS in #361
  • feat: add SandboxMultiClusterNaming feature gate to embed cluster ID by @zmberg in #370
  • feat: add strategic merge patch markers to CRD types for kubectl apply by @zmberg in #372
  • feat(metrics): add operation counters, deletion duration, resume type label, and abnormal state detection by @KeyOfSpectator in #336

Fixes

  • fix(controller): fix sbx fails to enter the Running stage when using templateRef by @PersistentJZH in #260
  • fix: update EnvdVersion from 0.1.1 to 0.2.10 by @AiRanthem in #276
  • bugfix for a design flaw, the sandbox-controller inconsistently injects by @BH4AWS in #279
  • fix: checkpoint bugfix by @BH4AWS in #275
  • fix(utils): panic when logging sidecar config error by @lxs137 in #301
  • fix(e2b): enforce connect timeout extension semantics by @AiRanthem in #303
  • CSI remounting in the sandbox-controller during the wakeup phase by @BH4AWS in #305
  • after a recreate upgrade, the pod is brand new, so runtime and dynamic sidecar need re-injection by @BH4AWS in #316
  • security: reduce filesystem permissions for certificates and keys by @PRAteek-singHWY in #330
  • fix: use ceil rounding for maxUnavailable percentage to ensure at least 1 pod by @zmberg in #348
  • fix: clear stale Upgrading condition on upgrade re-trigger by @zmberg in #349
  • fix(sandbox): make pause/resume concurrency-safe under parallel requests by @AiRanthem in #358
  • fix: include initContainers in resize body to prevent inplace VPA failure by @zmberg in #368
  • fix: include stdout/stderr in lifecycle hook failure messages by @zmberg in #380

Chores

  • upgrade k8s sdk to v0.35 by @zmberg in #238
  • add roadmap by @furykerry in #271
  • chore: add fmt-imports.sh and fmt imports by @PersistentJZH in #272
  • build(deps): bump actions/cache from 5.0.3 to 5.0.5 by @dependabot[bot] in #281
  • build(deps): bump crate-ci/typos from 1.44.0 to 1.45.1 by @dependabot[bot] in #283
  • build(deps): bump ruby/setup-ruby from 1.286.0 to 1.302.0 by @dependabot[bot] in #284
  • add docker sandbox-gateway workflows by @ZhaoQing7892 in #295
  • add observability prometheus metric proposal doc by @KeyOfSpectator in #306
  • add code-reviewer agents and OWNERS file by @furykerry in #310
  • build(deps): bump crate-ci/typos from 1.45.1 to 1.45.2 by @dependabot[bot] in #318
  • build(deps): bump crate-ci/typos from 1.45.2 to 1.46.0 by @dependabot[bot] in #338
  • build(deps): bump github/codeql-action from 4.35.1 to 4.35.3 by @dependabot[bot] in #339
  • docs: add claude code deployment guide by @bcfre in #334
  • docs: add proposal for sandbox container image commit by @Luckydog691 in #331
  • docs: fix SandboxClaim Labels comment to reflect template sync and claiming by @zmberg in #350
  • docs: add Gateway Identity Provider proposal with token refresh and multi-scenario support by @BH4AWS in #357
  • build(deps): bump crate-ci/typos from 1.46.0 to 1.46.1 by @dependabot[bot] in #376
  • build(deps): bump ruby/setup-ruby from 1.302.0 to 1.307.0 by @dependabot[bot] in #377
  • build(deps): bump github/codeql-action from 4.35.3 to 4.35.4 by @dependabot[bot] in #378
  • refactor(sandbox-manager): migrate cache layer to controller-runtime architecture by @AiRanthem in #287
  • refactor: unify post-resume initialization into sandbox-controller by @BH4AWS in #360
  • optimize CSI mounting logic by replacing serial mode with parallel by @BH4AWS in #290
  • Improve middleware logs by @AiRanthem in #363
  • test(sandbox): remove unnecessary TestEnsureSandboxPaused_DelegatesTo by @AiRanthem in #384

New Contributors

Full Changelog: v0.2.0...v0.3.0

v0.2.0

Choose a tag to compare

@zmberg zmberg released this 10 Apr 07:06
5ec654f

Change Log

v0.2.0

Change log since v0.1.0

Key Features

  • Introduced the sandbox-gateway component to separate the data plane (ingress traffic handling) from the component sandbox-manager, enhancing system stability and fault isolation. (#203, @chengzhycn)
  • Added support for mounting multiple NAS/OSS volumes dynamically. (#211, @BH4AWS)
  • Enhanced E2B APIs with snapshot and clone capabilities. (#204, @AiRanthem)
  • Implemented paginated listing and deletion of snapshots. (#233, @AiRanthem)
  • Added protection to prevent unauthorized deletion of Sandbox Pods, and only the sandbox controller may delete them. (#214, @zmberg)
  • Enabled CSI volume mounting during sandbox creation via SandboxClaim. (#229, @BH4AWS)
  • Added support for automatically injecting runtime and CSI sidecar containers based on sandbox ConfigMap configuration. (#232, @BH4AWS)

Performance Improvements

  • Improved performance in large-scale sandbox creation scenarios by optimizing ListSandboxesInPool using singleflight deduplication. (#186, @AiRanthem)
  • Introduced feature gate SandboxCreatePodRateLimitGate to enable prioritized sandbox pod creation. (#171, @zmberg)

Other Notable Changes

agents-sandbox-manager

  • Extended the E2B CreateSandbox API with the e2b.agents.kruise.io/never-timeout annotation to support sandboxes that never auto-delete. (#183, @AiRanthem)
  • Enabled CreateOnNoStock by default when claiming a sandbox. (#187, @AiRanthem)
  • Removed default timeout assignment for paused sandboxes, preventing automatic deletion. (#196, @AiRanthem)
  • Sandbox Manager now supports filtering sandbox-related custom resources via configurable sandbox-namespace and sandbox-label-selector. (#217, @lxs137)

agents-sandbox-controller

  • Add flag parsing support (e.g., -v) for configurable logging verbosity. (#184, @songtao98)
  • Add label selector for Pod informer to reduce cache size. (#198, @PersistentJZH)

Misc (Chores and tests)

v0.1.0

Choose a tag to compare

@zmberg zmberg released this 05 Mar 05:55

🚀 Announcing OpenKruise Agent v0.1.0!

We are thrilled to announce the first official release of OpenKruise Agent v0.1.0!

OpenKruise Agent brings Kubernetes-native best practices for managing AI agent workloads at scale. Designed with both AI researchers and infrastructure engineers in mind, it simplifies and accelerates the deployment, operation, and lifecycle management of AI agents in cloud-native environments.

The project introduces two core components: agents-sandbox-controller and agents-sandbox-manager, delivering the following key capabilities:

agents-sandbox-controller

  • Declaratively define and manage agent sandboxes using the new Sandbox and SandboxClaim custom resource definitions (CRDs).
  • Achieve faster sandbox provisioning and improved scalability through SandboxSet, an optimized controller for batch sandbox management.

agents-sandbox-manager

  • Implements the widely adopted E2B protocol, providing essential runtime capabilities such as sandbox creation, request routing, and lifecycle orchestration.
  • Extends the E2B protocol with advanced features including in-place image updates and dynamic mounting of NAS/OSS storage into running sandboxes-enabling greater flexibility and efficiency for AI workloads.

With OpenKruise Agent v0.1.0, we’re taking the first step toward a robust, scalable, and developer-friendly solution for running AI agents on Kubernetes. We invite the community to try it out, contribute, and help shape the future of AI infrastructure!

🔗 Learn more and get started: website

preview-v0.0.3

preview-v0.0.3 Pre-release
Pre-release

Choose a tag to compare

@AiRanthem AiRanthem released this 22 Jan 11:04
38b9322

What's Changed

  • Feature/update cache for support pv csi mount by @BH4AWS in #82
  • [BugFix] sandbox-manager will remove routes properly when Sandboxes are deleted. by @AiRanthem in #94
  • modify TestResumeSandbox occasional panic by @zmberg in #91
  • fix inplace update using common interface implementation by @BH4AWS in #95
  • add docs for contributors to build and deploy by @AiRanthem in #93
  • imagepullpolicy field should not set in sandboxset webhook by default. by @zmberg in #97

Full Changelog: preview-v0.0.2...preview-v0.0.3

preview-v0.0.2

preview-v0.0.2 Pre-release
Pre-release

Choose a tag to compare

@AiRanthem AiRanthem released this 16 Jan 08:26
e81779c

What's Changed

  • Add workflow by @furykerry in #11
  • use annotations as metadata by @furykerry in #13
  • [Feature] add agent-runtime by @AiRanthem in #21
  • Bump actions/cache from 4.3.0 to 5.0.1 by @dependabot[bot] in #15
  • Bump ruby/setup-ruby from 1.265.0 to 1.270.0 by @dependabot[bot] in #16
  • Bump actions/setup-go from 5.4.0 to 6.1.0 by @dependabot[bot] in #18
  • Bump github/codeql-action from 4.31.7 to 4.31.9 by @dependabot[bot] in #20
  • Bump crate-ci/typos from 1.39.2 to 1.40.0 by @dependabot[bot] in #19
  • Bump codecov/codecov-action from 5.5.0 to 5.5.2 by @dependabot[bot] in #17
  • Bump golangci/golangci-lint-action from 8.0.0 to 9.2.0 by @dependabot[bot] in #14
  • Bump ruby/setup-ruby from 1.270.0 to 1.271.0 by @dependabot[bot] in #25
  • [Feature] Support E2B SDK version 2.8.1 by @AiRanthem in #27
  • add podtemplate validation for sandboxset by @ZhaoQing7892 in #24
  • sandbox support inplace update proposal by @zmberg in #28
  • [feat] add feature gate by @yuexian1234 in #31
  • Rename 20250218-sandbox-inplace-update.md by @AiRanthem in #38
  • improve phase transition handling and update deprecated API usage by @bcfre in #22
  • [Feature] add event-driven waiting mechanism sandbox-manager by @AiRanthem in #29
  • [Feature] SandboxSet supports templateRef by @AiRanthem in #42
  • [Feature] Move authentication down to Sandbox by @AiRanthem in #43
  • Bump ruby/setup-ruby from 1.271.0 to 1.275.0 by @dependabot[bot] in #45
  • sandbox support inplace update image by @zmberg in #47
  • [Doc] add examples for code_interpreter and desktop by @AiRanthem in #58
  • Bump actions/checkout from 4.2.2 to 6.0.1 by @dependabot[bot] in #57
  • Bump helm/kind-action from 1.12.0 to 1.13.0 by @dependabot[bot] in #55
  • Bump ruby/setup-ruby from 1.275.0 to 1.278.0 by @dependabot[bot] in #56
  • Bump crate-ci/typos from 1.40.0 to 1.41.0 by @dependabot[bot] in #53
  • feat: add enable-pprof flag to sandbox-manager and agent-sandbox-cont… by @DCchoudhury15 in #61
  • Fix inplace update by @zmberg in #63
  • default set sandboxset pod template by @zmberg in #64
  • pod template validate allow privilege by @zmberg in #67
  • sandbox controller add recouceversion expectation by @zmberg in #69
  • feat: add metrics to track sandbox creation latency and success rate by @DCchoudhury15 in #65
  • Support volumeClaimTemplates in SandboxSet and Sandbox by @ZhaoQing7892 in #48
  • inplace update add GeneratePatchBodyFunc by @zmberg in #71
  • [Feature] Add extensions for sandbox claiming by @AiRanthem in #44
  • fix unit test coverage report by @furykerry in #66
  • [Feature] support custom e2b by @AiRanthem in #34
  • Bump crate-ci/typos from 1.41.0 to 1.42.0 by @dependabot[bot] in #73
  • Bump ruby/setup-ruby from 1.278.0 to 1.280.0 by @dependabot[bot] in #74
  • feat: Add sandbox claim label synchronization between Pod and Sandbox by @bcfre in #59
  • feat: force sync route after sandbox resume by @PersistentJZH in #52
  • [Feature] optimize sandbox-manager for large-scale concurrent claiming by @AiRanthem in #75
  • [Feature] add a kustomize directory for sandbox-manager by @AiRanthem in #80
  • [Feature] align pause logic with native E2B by @AiRanthem in #51
  • Add sandbox claim crd proposal by @PersistentJZH in #49
  • modify the SetSandboxCondition method to reduce unnecessary update by @zmberg in #84
  • [Feature] Refactor some code to improve extensibility by @AiRanthem in #83
  • add unit test for proxyutils by @AiRanthem in #85
  • [bugfix] remove label and annotation validation for sandboxset by @AiRanthem in #86
  • Bump github/codeql-action from 4.31.9 to 4.31.10 by @dependabot[bot] in #87
  • initial proposal of autoscaler supporting for sandboxSet by @sivanzcw in #77
  • workflow agent runtime docker image by @zmberg in #90
  • update agent-runtime-docker-image.yml by @AiRanthem in #92

New Contributors

Full Changelog: v0.0.1...preview-v0.0.2

v0.0.1

v0.0.1 Pre-release
Pre-release

Choose a tag to compare

@furykerry furykerry released this 17 Dec 01:21
support set timeout while resuming

Signed-off-by: AiRanthem <zhongtianyun.zty@alibaba-inc.com>