Synthèse
Instead of treating every agent as a first-class Kubernetes workload, agent-substrate introduces an additional control plane above Kubernetes. Kubernetes continues to manage Pods, Services, networking, storage, and compute resources, while agent-substrate manages the lifecycle and placement of AI actors onto execution workers. Agent-substrate introduces a set of abstractions that are similar to the Kubernetes concepts we are already familiar with. A WorkerPool is analogous to a NodePool, Workers
Instead of treating every agent as a first-class Kubernetes workload, agent-substrate introduces an additional control plane above Kubernetes. Kubernetes continues to manage Pods, Services, networking, storage, and compute resources, while agent-substrate manages the lifecycle and placement of AI actors onto execution workers. Agent-substrate introduces a set of abstractions that are similar to the Kubernetes concepts we are already familiar with. A WorkerPool is analogous to a NodePool, Workers are analogous to Nodes, and ActorTemplates correspond to the declarative specification of a Pod. Let’s look at what this abstraction looks like in practice.
A WorkerPool defines a collection of execution workers that can host Actors. Example of the default WorkerPool in kagent: apiVersion: ate. dev/v1alpha1 kind: WorkerPool metadata: labels: app. kubernetes. io/instance: kagent app.
kubernetes. io/name: kagent name: kagent-default namespace: kagent spec: ateomImage: ghcr. io/kagent-dev/substrate/ateom-gvisor:v0. 0. 6 replicas: 3 An ActorTemplate defines how an Actor should execute, much like a PodTemplate defines how a Pod should be created.
Below is an example of a simple ActorTemplate in kagent. Note that it includes the runsc configuration, which serves as the execution entrypoint for gVisor. I omitted several kagent-specific fields, including the agent’s name and additional configuration details. apiVersion: ate. dev/v1alpha1 kind: ActorTemplate metadata: labels: app.
kubernetes. io/managed-by: kagent kagent. dev/sandbox-agent: hello-substrate name: hello-substrate namespace: kagent spec: containers: - command: - /app ... env: ... image: cr.
kagent. dev/kagent-dev/kagent/golang-adk@sha256:e01479b52280b0eae9e2808cc68392ba98fd737782496ff256847257e6bb8ed1 name: kagent pauseImage: gcr.