UNPKG

@tanstack/ai-sandbox

Version:

Provider-agnostic sandbox layer for TanStack AI — run harness adapters inside isolated sandboxes (defineSandbox, defineWorkspace, withSandbox) with a uniform SandboxHandle, workspace bootstrap, policy, and resumable lifecycle.

26 lines (22 loc) 745 B
export type SetupGroup = | { kind: 'serial'; command: string } | { kind: 'parallel'; commands: Array<string> } export interface SetupBuilder { serial: (command: string) => void parallel: (commands: Array<string>) => void } export type SetupInput = Array<string> | ((builder: SetupBuilder) => void) export function buildSetupPlan( input: SetupInput | undefined, ): Array<SetupGroup> { if (input === undefined) return [] if (Array.isArray(input)) { return input.map((command) => ({ kind: 'serial', command })) } const groups: Array<SetupGroup> = [] input({ serial: (command) => groups.push({ kind: 'serial', command }), parallel: (commands) => groups.push({ kind: 'parallel', commands }), }) return groups }