/** * Docker sandbox — executes commands in a Docker container via `docker exec`. */ import type { ExecuteOptions } from './base.js'; import { PosixShellSandbox } from './posix-shell.js'; import type { ExecutionResult, StreamChunk } from './types.js'; import type { Tool } from '../tools/tool.js'; /** * Options for constructing a {@link DockerSandbox}. */ export interface DockerSandboxOptions { /** ID or name of a running Docker container. */ container: string; /** * Working directory for executed commands. If omitted, no `-w` flag is set and * commands run in the container's configured working directory. * * Set this to run elsewhere; the path must exist and be writable by the effective {@link user}. */ workingDir?: string; /** * User to run commands as, in `"uid"`, `"uid:gid"`, or `"name"` form. If omitted, * no `--user` flag is set and commands run as the container's configured user. * * Set this to override the container's identity, e.g. `"root"` or `"1000:1000"`. */ user?: string; } /** Execute commands in a Docker container via `docker exec`. */ export declare class DockerSandbox extends PosixShellSandbox { readonly container: string; readonly workingDir: string | undefined; private readonly _user; constructor(options: DockerSandboxOptions); executeStreaming(command: string, options?: ExecuteOptions): AsyncGenerator; getTools(): Tool[]; } //# sourceMappingURL=docker.d.ts.map