import { normalizeOptionalLowercaseString } from "../../shared/string-coerce.js"; import type {
RegisteredSandboxBackend,
SandboxBackendFactory,
SandboxBackendId,
SandboxBackendManager,
SandboxBackendRegistration,
} from "./backend.types.js";
export type {
CreateSandboxBackendParams,
SandboxBackendFactory,
SandboxBackendId,
SandboxBackendManager,
SandboxBackendRegistration,
SandboxBackendRuntimeInfo,
} from "./backend.types.js";
export type {
SandboxBackendCommandParams,
SandboxBackendCommandResult,
SandboxBackendExecSpec,
SandboxBackendHandle,
SandboxFsBridgeContext,
} from "./backend-handle.types.js";
const SANDBOX_BACKEND_FACTORIES = new Map<SandboxBackendId, RegisteredSandboxBackend>();
function normalizeSandboxBackendId(id: string): SandboxBackendId { const normalized = normalizeOptionalLowercaseString(id); if (!normalized) { thrownew Error("Sandbox backend id must not be empty.");
} return normalized;
}
export function requireSandboxBackendFactory(id: string): SandboxBackendFactory { const factory = getSandboxBackendFactory(id); if (factory) { return factory;
} thrownew Error(
[
`Sandbox backend "${id}" is not registered.`, "Load the plugin that provides it, or set agents.defaults.sandbox.backend=docker.",
].join("\n"),
);
}
import { createDockerSandboxBackend, dockerSandboxBackendManager } from "./docker-backend.js"; import { createSshSandboxBackend, sshSandboxBackendManager } from "./ssh-backend.js";
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.