Skip to content

[Feature Request] Support Sandbox Snapshots for Stateful Multi-Turn Code Execution #76

@xuehuitian45

Description

@xuehuitian45

Description

Currently, each tool invocation that uses the sandbox (e.g., code interpreter) starts from a clean or fixed initial state. This forces users to:

  • Re-declare variables, re-import libraries, or re-upload data in every turn
  • Avoid multi-step coding workflows (e.g., “load data → plot → refine”)
  • Work around state loss with brittle workarounds (e.g., concatenating all code into one block)

To enable interactive, stateful programming sessions (like Jupyter Notebook), we propose adding sandbox snapshot support:

After a successful code execution, the sandbox can save its current runtime state (e.g., Python globals, installed packages, file system changes).
Subsequent calls can resume from that snapshot, preserving context across turns.

This is especially valuable for:

  • Data analysis agents
  • Long-running agent workflows with iterative coding

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions