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
JavaScriptdeepagentsnodeContextHubBackend
Class●Since v1.10

ContextHubBackend

Backend that stores files in a LangSmith Hub agent repo (persistent).

Copy
class ContextHubBackend

Constructors

constructor
constructor

Methods

method
downloadFiles→ MaybePromise<FileDownloadResponse[]>

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

method
edit→ Promise<EditResult>

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.

method
getLinkedEntries→ Promise<Record<string, string>>

Return linked-entry paths mapped to their repo handles.

method
glob→ Promise<GlobResult>

Structured glob matching returning FileInfo objects.

Uses pure POSIX shell (find + stat) via execute() to list all files, then applies glob-to-regex matching in TypeScript. No Python or Node.js needed on the sandbox host.

Glob patterns are matched against paths relative to the search base:

  • * matches any characters except /
  • ** matches any characters including / (recursive)
  • ? matches a single character except /
  • [...] character classes
method
grep→ Promise<GrepResult>

Search for a literal text pattern in files using grep.

method
hasPriorCommits→ Promise<boolean>

Return true if the hub repo already exists with at least one commit.

method
ls→ Promise<LsResult>

List files and directories in the specified directory (non-recursive).

Uses pure POSIX shell (find + stat) via execute() — works on any Linux including Alpine. No Python or Node.js needed.

method
read→ Promise<ReadResult>

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).

method
readRaw→ Promise<ReadRawResult>

Read file content as raw FileData.

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

method
uploadFiles→ MaybePromise<FileUploadResponse[]>

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

method
write→ Promise<WriteResult>

Create a new file with content.

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

View source on GitHub