What runs where
The agent’s conversation still reaches Anthropic wherever its commands run: the
inputs it sends to a command and the output it reads back are part of that
conversation. Running in your environment keeps the command itself, its files
and its network access local, not the conversation.
How a sandbox is isolated
Each run gets its own sandbox: a pod with its own filesystem, CPU and memory limits, and a network policy.- Network: a sandbox reaches only the hosts its workflow needs, and only with the requests that workflow allows. Everything else, including other services in your cluster and the cloud metadata endpoint, is refused.
- Resources: every sandbox is created with CPU and memory limits, so a run cannot starve the workloads it shares nodes with.
- Lifetime: a sandbox exists for one run and is deleted when the run ends.
Requirements
- Kubernetes 1.29 or later.
- A network plugin that enforces Kubernetes NetworkPolicy, for both ingress and egress. Without enforcement, sandbox network rules are accepted but not applied. On EKS, turn on network policy in the VPC CNI add-on.
- A default StorageClass, for the runtime’s state volume and each sandbox’s workspace.
- Permission to install cluster-wide resources: the runtime adds the Agent Sandbox custom resource definitions and their controller.
What gets installed
The runtime ships as thecostgraph-agent-runtime Helm chart from
https://charts.costgraph.ai. It installs:
- A sandbox gateway that creates, supervises and deletes sandboxes.
- The Agent Sandbox
controller and its custom resource definitions. Leave it out with
agentSandbox.enabled=falseif your cluster already runs it.
helm install, such as Argo CD, create that key
yourself and pass it in, or each sync would replace it:
openssl rand -base64 32. Set it once
and never change it: a replaced key makes stored credentials unreadable.