eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
46 lines (45 loc) • 1.76 kB
TypeScript
/**
* Image pull behavior for the Docker sandbox backend.
*
* - `"if-not-present"` (default): pull the base image only when it is
* missing from the local image store.
* - `"always"`: pull before every template build so the image floats to
* the registry's latest digest.
* - `"never"`: never pull; fail when the image is missing locally.
*/
export type DockerSandboxPullPolicy = "if-not-present" | "always" | "never";
/**
* Initial network policy for sandboxes created by the Docker backend.
* Docker supports coarse-grained egress control only: `"allow-all"`
* attaches the container to the default bridge network, `"deny-all"`
* runs it with networking disabled. Domain-level policies and
* credential brokering require `vercel()`.
*/
export type DockerSandboxNetworkPolicy = "allow-all" | "deny-all";
/**
* Options accepted by `docker(opts)`.
*/
export interface DockerSandboxCreateOptions {
/**
* Base container image for templates and sessions. Defaults to
* `ghcr.io/vercel/eve:latest` — eve's published sandbox runtime image.
* Framework setup creates `/workspace` and verifies Bash. Install any
* authored runtime tools in sandbox bootstrap or provide them through a
* custom image.
*/
readonly image?: string;
/**
* Environment variables baked into every container the backend
* creates (template builds and sessions).
*/
readonly env?: Readonly<Record<string, string>>;
/**
* Base image pull behavior. Defaults to `"if-not-present"`.
*/
readonly pullPolicy?: DockerSandboxPullPolicy;
/**
* Initial network policy for created containers. Defaults to
* `"allow-all"`.
*/
readonly networkPolicy?: DockerSandboxNetworkPolicy;
}