LangChain Reference home pageLangChain ReferenceLangChain Reference
  • GitHub
  • Main Docs
Deep Agents
LangChain
LangGraph
Integrations
LangSmith
  • Overview
  • Agent
  • Middleware
  • Backends
  • Sandboxes
  • Skills
  • Subagents
  • Types
Modal
Daytona
Deno
Node VFS
Sandbox Standard Tests
  • Vitest
⌘I

LangChain Assistant

Ask a question to get started

Enter to send•Shift+Enter new line

Menu

OverviewAgentMiddlewareBackendsSandboxesSkillsSubagentsTypes
Modal
Daytona
Deno
Node VFS
Sandbox Standard Tests
Vitest
Language
Theme
JavaScriptdeepagentsindexSandboxBackendProtocolV1
Interface●Since v1.9Deprecated

SandboxBackendProtocolV1

Copy
interface SandboxBackendProtocolV1

Bases

BackendProtocolV1

Properties

Methods

Inherited fromBackendProtocolV1

Methods

MdownloadFiles→ MaybePromise<FileDownloadResponse[]>
—

Download multiple files from the sandbox.

Medit→ Promise<EditResult>
—

Edit a file by replacing string occurrences.

MglobInfo→ MaybePromise<FileInfo[]>
—

Structured glob matching returning FileInfo objects.

View source on GitHub
M
grepRaw
→ MaybePromise<string | GrepMatch[]>
—

Search file contents for a literal text pattern.

MlsInfo→ MaybePromise<FileInfo[]>
—

Structured listing with file metadata.

Mread→ Promise<ReadResult>
—

Read file content with line numbers.

MreadRaw→ Promise<ReadRawResult>
—

Read file content as raw FileData.

MuploadFiles→ MaybePromise<FileUploadResponse[]>
—

Upload multiple files to the sandbox.

Mwrite→ Promise<WriteResult>
—

Create a new file with content.

property
id: string
method
downloadFiles→ MaybePromise<FileDownloadResponse[]>
method
edit→ Promise<EditResult>
method
execute→ MaybePromise<ExecuteResponse>
method
globInfo→ MaybePromise<FileInfo[]>
method
grepRaw→ MaybePromise<string | GrepMatch[]>
method
lsInfo→ MaybePromise<FileInfo[]>
method
read→ Promise<ReadResult>
method
readRaw→ Promise<ReadRawResult>
method
uploadFiles→ MaybePromise<FileUploadResponse[]>
method
write→ Promise<WriteResult>

Protocol for sandboxed backends with isolated runtime. Sandboxed backends run in isolated environments (e.g., containers) and communicate via defined interfaces.

Unique identifier for the sandbox backend

Download multiple files from the sandbox. Implementations must support partial success.

Edit a file by replacing string occurrences.

Uses downloadFiles() to read, performs string replacement in TypeScript, then uploadFiles() to write back. No runtime needed on the sandbox host.

Memory-conscious: releases intermediate references early so the GC can reclaim buffers before the next large allocation is made.

Execute a command in the sandbox. This is the only method concrete implementations must provide.

Structured glob matching returning FileInfo objects.

Search file contents for a literal text pattern.

Binary files (determined by MIME type) are skipped.

Structured listing with file metadata.

Lists files and directories in the specified directory (non-recursive). Directories have a trailing / in their path and is_dir=true.

Read file content with line numbers.

Uses pure POSIX shell (awk) via execute() — only the requested slice is returned over the wire, making this efficient for large files. Works on any Linux including Alpine (no Python or Node.js needed).

Read file content as raw FileData.

Uses downloadFiles() directly — no runtime needed on the sandbox host.

Upload multiple files to the sandbox. Implementations must support partial success.

Create a new file with content.

Uses downloadFiles() to check existence and uploadFiles() to write. No runtime needed on the sandbox host.