用途:为 Deep Agent 提供记忆、持久化与文件系统访问能力,解决短期(线程内)与长期(跨线程、跨会话)状态保存需求。
主要能力与后端:StateBackend 为短期存储,仅在同一 thread 内有效,thread 结束即丢失,属默认方式且无需额外配置。StoreBackend 为长期存储,可跨 thread 和会话保留数据,但需要提供 store 实例。FilesystemBackend 提供真实磁盘访问,适合本地开发 CLI,可配合 root_dir 与 virtual_mode 限制访问范围。CompositeBackend 按路径把请求路由到不同后端,实现临时与持久混合存储。
FilesystemMiddleware 提供工具:ls、read_file、write_file、edit_file、glob、grep。可通过 create_deep_agent(backend=..., store=...) 配置后端。常见用法包括:默认 StateBackend 写入 /draft.txt 会随 thread 结束丢失;用 CompositeBackend 将 /memories/ 路由到 StoreBackend,使 Thread 2 可读取 Thread 1 保存的文件;FilesystemBackend 配合 interrupt_on 与 checkpointer 实现人工确认的文件写入;也可在自定义 tool 中通过 runtime.store 读写长期存储中的用户偏好。
适用场景与限制:临时工作文件用 StateBackend;本地开发用 FilesystemBackend;跨会话记忆用 StoreBackend;混合存储用 CompositeBackend。StoreBackend 必须传入 store。工具名称不可更改。无法在 virtual_mode 限制之外访问文件。未正确配置后端时无法跨 thread 访问文件。安全方面:切勿在 Web 服务器中使用 FilesystemBackend,应改用 StateBackend 或沙箱。具体安装命令、版本与收费信息暂未提供。