eve
Version:
Filesystem-first framework for durable backend AI agents that run anywhere.
27 lines (26 loc) • 1.56 kB
TypeScript
import { type DefaultSandboxProbes } from "#sandbox/backends/default.js";
import { type SandboxBackend, type SandboxDefinition } from "#public/sandbox/index.js";
import { type SelfModificationConfig } from "./config.js";
export interface SelfModificationSandboxOptions {
/**
* Production backend. Deployed self-modification owns an allow-all network
* policy and temporarily adds a credential transform while checking out its
* source. When omitted, eve selects Vercel Sandbox on Vercel or microsandbox
* on a supported self-hosted system.
*/
readonly backend?: SandboxBackend;
/** Policy shared with the agent and extension mount. */
readonly config?: SelfModificationConfig;
}
type SelfModificationSandboxProbes = Pick<DefaultSandboxProbes, "isDeployedOnVercel" | "isMicrosandboxSupported">;
/** Defines the local source mount or isolated production proposal workspace. */
export declare function defineSelfModificationSandbox(options?: SelfModificationSandboxOptions): SandboxDefinition;
/**
* Deployed self-modification deliberately selects a backend that can inject
* GitHub auth at the network boundary, keeping the credential outside the
* sandbox and agent. Docker and just-bash do not provide that separation.
* Internal—exported for tests, which inject availability probes.
*/
export declare function selectDeployedSelfModificationBackend(configured: SandboxBackend | undefined, probes: SelfModificationSandboxProbes): SandboxBackend;
declare const _default: SandboxDefinition;
export default _default;