StoreBackend: Adapter for LangGraph's BaseStore (persistent, cross-thread).
File storage format version.
'v1': Legacy format — content stored as list[str] (lines split
on \\n), no encoding field.'v2': Current format — content stored as a plain str (UTF-8 text
or base64-encoded binary), with an encoding field ("utf-8" or
"base64").Emit a deprecation warning with caller-controlled stack attribution.
langchain_core.warn_deprecated formats a standard message but hardcodes
stacklevel=4 in its internal warnings.warn call. That value targets a
decorator-wrapped frame layout; when called directly from a deprecated
method's body the warning is attributed one frame too high (above the
user's call site). This wrapper captures the formatted upstream warning
and re-emits it with an explicit stacklevel, so the warning points at
the user's call site.
Create a FileData object with timestamps.
Convert FileData to plain string content.
Return structured grep matches from an in-memory files mapping.
Performs literal text search (not regex).
Returns a GrepResult with matches on success. We deliberately do not raise here to keep backends non-throwing in tool contexts and preserve user-facing error messages.
Perform string replacement with occurrence validation.
Slice file data to the requested line range without formatting.
Returns raw text for the requested window. Line-number formatting is applied downstream by the middleware layer.
Update FileData with new content, preserving creation timestamp.
Result from backend edit operations.
Data structure for storing file contents with metadata.
Result of a single file download operation.
The response is designed to allow partial success in batch operations.
The errors are standardized using FileOperationError literals for certain
recoverable conditions for use cases that involve LLMs performing
file operations.
Structured file listing info.
Minimal contract used across backends. Only path is required.
Other fields are best-effort and may be absent depending on backend.
Result of a single file upload operation.
The response is designed to allow partial success in batch operations.
The errors are standardized using FileOperationError literals for certain
recoverable conditions for use cases that involve LLMs performing
file operations.
Result from backend glob operations.
Result from backend grep operations.
Result from backend ls operations.
Result from backend read operations.
Result from backend write operations.
Backend that stores files in LangGraph's BaseStore (persistent).
Uses LangGraph's Store for persistent, cross-conversation storage. Files are organized via namespaces and persist across all threads.
The namespace can include an optional assistant_id for multi-agent isolation.
Context passed to namespace factory functions.
BackendContext will be removed in deepagents==0.7.0. Namespace
factories now receive a Runtime instance directly. Migrate
lambda ctx: (ctx.runtime.context.user_id, "fs") to
lambda rt: (rt.server_info.user.identity, "fs").
Protocol for pluggable memory backends (single, unified).
Backends can store files in different locations (state, filesystem, database, etc.) and provide a uniform interface for file operations.
All file data is represented as dicts with the following structure:
{
"content": str, # Text content (utf-8) or base64-encoded binary
"encoding": str, # "utf-8" for text, "base64" for binary data
"created_at": str, # ISO format timestamp
"modified_at": str, # ISO format timestamp
}