diff --git a/src/oss/deepagents/cli/overview.mdx b/src/oss/deepagents/cli/overview.mdx
index 7b9f73f714..03d57fe469 100644
--- a/src/oss/deepagents/cli/overview.mdx
+++ b/src/oss/deepagents/cli/overview.mdx
@@ -616,14 +616,14 @@ For a deeper look at sandbox architecture, integration patterns, and security be
Included by default when installing `deepagents-cli`. No extra installation needed.
-
+
```bash
- uv tool install deepagents-cli --with langchain-agentcore-codeinterpreter
+ uv tool install deepagents-cli --with langchain-daytona
```
-
+
```bash
- uv tool install deepagents-cli --with langchain-daytona
+ uv tool install deepagents-cli --with langchain-modal
```
@@ -631,9 +631,9 @@ For a deeper look at sandbox architecture, integration patterns, and security be
uv tool install deepagents-cli --with langchain-runloop
```
-
+
```bash
- uv tool install deepagents-cli --with langchain-modal
+ uv tool install deepagents-cli --with langchain-agentcore-codeinterpreter
```
@@ -646,17 +646,14 @@ For a deeper look at sandbox architecture, integration patterns, and security be
export LANGSMITH_API_KEY="your-key"
```
-
+
```bash
- export AWS_ACCESS_KEY_ID="your-key"
- export AWS_SECRET_ACCESS_KEY="your-secret"
- export AWS_SESSION_TOKEN="session-token"
- export AWS_REGION="us-west-2"
+ export DAYTONA_API_KEY="your-key"
```
-
+
```bash
- export DAYTONA_API_KEY="your-key"
+ modal setup
```
@@ -664,9 +661,12 @@ For a deeper look at sandbox architecture, integration patterns, and security be
export RUNLOOP_API_KEY="your-key"
```
-
+
```bash
- modal setup
+ export AWS_ACCESS_KEY_ID="your-key"
+ export AWS_SECRET_ACCESS_KEY="your-secret"
+ export AWS_SESSION_TOKEN="session-token"
+ export AWS_REGION="us-west-2"
```
@@ -679,14 +679,14 @@ For a deeper look at sandbox architecture, integration patterns, and security be
deepagents --sandbox langsmith
```
-
+
```bash
- deepagents --sandbox agentcore
+ deepagents --sandbox daytona
```
-
+
```bash
- deepagents --sandbox daytona
+ deepagents --sandbox modal
```
@@ -694,9 +694,9 @@ For a deeper look at sandbox architecture, integration patterns, and security be
deepagents --sandbox runloop
```
-
+
```bash
- deepagents --sandbox modal
+ deepagents --sandbox agentcore
```
diff --git a/src/oss/deepagents/data-analysis.mdx b/src/oss/deepagents/data-analysis.mdx
index b17aba6e7e..9813d7aeb5 100644
--- a/src/oss/deepagents/data-analysis.mdx
+++ b/src/oss/deepagents/data-analysis.mdx
@@ -83,27 +83,6 @@ Deep Agents use [backends](/oss/deepagents/backends) to execute code in sandboxe
See [available providers](/oss/deepagents/sandboxes#available-providers) for setup details.
-
-
-
- ```bash pip
- pip install langchain-agentcore-codeinterpreter
- ```
- ```bash uv
- uv add langchain-agentcore-codeinterpreter
- ```
-
-
- ```python
- from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
- from langchain_agentcore_codeinterpreter import AgentCoreSandbox
-
- interpreter = CodeInterpreter(region="us-west-2")
- interpreter.start()
- backend = AgentCoreSandbox(interpreter=interpreter)
- ```
-
-
@@ -170,6 +149,27 @@ backend = RunloopSandbox(devbox=devbox)
```
+
+
+
+ ```bash pip
+ pip install langchain-agentcore-codeinterpreter
+ ```
+ ```bash uv
+ uv add langchain-agentcore-codeinterpreter
+ ```
+
+
+ ```python
+ from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
+ from langchain_agentcore_codeinterpreter import AgentCoreSandbox
+
+ interpreter = CodeInterpreter(region="us-west-2")
+ interpreter.start()
+ backend = AgentCoreSandbox(interpreter=interpreter)
+ ```
+
+
This backend provides unrestricted filesystem and shell access. Use only in controlled environments for development and testing. See the [security considerations](/oss/deepagents/backends#localshellbackend-local-shell) for more details.
diff --git a/src/oss/deepagents/sandboxes.mdx b/src/oss/deepagents/sandboxes.mdx
index 545be39125..bcfb0e7d6e 100644
--- a/src/oss/deepagents/sandboxes.mdx
+++ b/src/oss/deepagents/sandboxes.mdx
@@ -146,21 +146,19 @@ await sandbox.close();
:::python
-
+
```python
- from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
-
- from langchain_agentcore_codeinterpreter import AgentCoreSandbox
+ from daytona import Daytona
- interpreter = CodeInterpreter(region="us-west-2")
- interpreter.start()
+ from langchain_daytona import DaytonaSandbox
- backend = AgentCoreSandbox(interpreter=interpreter)
+ sandbox = Daytona().create()
+ backend = DaytonaSandbox(sandbox=sandbox)
result = backend.execute("echo hello")
# ... use sandbox
- interpreter.stop()
+ sandbox.stop()
```
@@ -198,19 +196,21 @@ await sandbox.close();
```
-
+
```python
- from daytona import Daytona
+ from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
- from langchain_daytona import DaytonaSandbox
+ from langchain_agentcore_codeinterpreter import AgentCoreSandbox
- sandbox = Daytona().create()
- backend = DaytonaSandbox(sandbox=sandbox)
+ interpreter = CodeInterpreter(region="us-west-2")
+ interpreter.start()
+
+ backend = AgentCoreSandbox(interpreter=interpreter)
result = backend.execute("echo hello")
# ... use sandbox
- sandbox.stop()
+ interpreter.stop()
```
@@ -544,32 +544,27 @@ You can also call the backend `execute()` method directly in your application co
:::python
-
+
```bash pip
- pip install langchain-agentcore-codeinterpreter
+ pip install langchain-daytona
```
```bash uv
- uv add langchain-agentcore-codeinterpreter
+ uv add langchain-daytona
```
```python
- from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
-
- from langchain_agentcore_codeinterpreter import AgentCoreSandbox
+ from daytona import Daytona
- interpreter = CodeInterpreter(region="us-west-2")
- interpreter.start()
+ from langchain_daytona import DaytonaSandbox
- backend = AgentCoreSandbox(interpreter=interpreter)
+ sandbox = Daytona().create()
+ backend = DaytonaSandbox(sandbox=sandbox)
- try:
- result = backend.execute("python3 --version")
- print(result.output)
- finally:
- interpreter.stop()
+ result = backend.execute("python --version")
+ print(result.output)
```
@@ -615,27 +610,32 @@ You can also call the backend `execute()` method directly in your application co
devbox.shutdown()
```
-
+
```bash pip
- pip install langchain-daytona
+ pip install langchain-agentcore-codeinterpreter
```
```bash uv
- uv add langchain-daytona
+ uv add langchain-agentcore-codeinterpreter
```
```python
- from daytona import Daytona
+ from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
- from langchain_daytona import DaytonaSandbox
+ from langchain_agentcore_codeinterpreter import AgentCoreSandbox
- sandbox = Daytona().create()
- backend = DaytonaSandbox(sandbox=sandbox)
+ interpreter = CodeInterpreter(region="us-west-2")
+ interpreter.start()
- result = backend.execute("python --version")
- print(result.output)
+ backend = AgentCoreSandbox(interpreter=interpreter)
+
+ try:
+ result = backend.execute("python3 --version")
+ print(result.output)
+ finally:
+ interpreter.stop()
```
@@ -761,31 +761,29 @@ The deepagents sandbox backends support file transfer APIs for moving files betw
Use `upload_files()` to populate the sandbox before the agent runs. Paths must be absolute and contents are `bytes`:
-
+
```bash pip
- pip install langchain-agentcore-codeinterpreter
+ pip install langchain-daytona
```
```bash uv
- uv add langchain-agentcore-codeinterpreter
+ uv add langchain-daytona
```
```python
- from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
-
- from langchain_agentcore_codeinterpreter import AgentCoreSandbox
+ from daytona import Daytona
- interpreter = CodeInterpreter(region="us-west-2")
- interpreter.start()
+ from langchain_daytona import DaytonaSandbox
- backend = AgentCoreSandbox(interpreter=interpreter)
+ sandbox = Daytona().create()
+ backend = DaytonaSandbox(sandbox=sandbox)
backend.upload_files(
[
- ("hello.py", b"print('Hello')\n"),
- ("data.csv", b"name,value\na,1\nb,2\n"),
+ ("/src/index.py", b"print('Hello')\n"),
+ ("/pyproject.toml", b"[project]\nname = 'my-app'\n"),
]
)
```
@@ -838,29 +836,31 @@ Use `upload_files()` to populate the sandbox before the agent runs. Paths must b
)
```
-
+
```bash pip
- pip install langchain-daytona
+ pip install langchain-agentcore-codeinterpreter
```
```bash uv
- uv add langchain-daytona
+ uv add langchain-agentcore-codeinterpreter
```
```python
- from daytona import Daytona
+ from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
- from langchain_daytona import DaytonaSandbox
+ from langchain_agentcore_codeinterpreter import AgentCoreSandbox
- sandbox = Daytona().create()
- backend = DaytonaSandbox(sandbox=sandbox)
+ interpreter = CodeInterpreter(region="us-west-2")
+ interpreter.start()
+
+ backend = AgentCoreSandbox(interpreter=interpreter)
backend.upload_files(
[
- ("/src/index.py", b"print('Hello')\n"),
- ("/pyproject.toml", b"[project]\nname = 'my-app'\n"),
+ ("hello.py", b"print('Hello')\n"),
+ ("data.csv", b"name,value\na,1\nb,2\n"),
]
)
```
@@ -891,35 +891,31 @@ Use `upload_files()` to populate the sandbox before the agent runs. Paths must b
Use `download_files()` to retrieve files from the sandbox after the agent finishes:
-
+
```bash pip
- pip install langchain-agentcore-codeinterpreter
+ pip install langchain-daytona
```
```bash uv
- uv add langchain-agentcore-codeinterpreter
+ uv add langchain-daytona
```
```python
- from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
-
- from langchain_agentcore_codeinterpreter import AgentCoreSandbox
+ from daytona import Daytona
- interpreter = CodeInterpreter(region="us-west-2")
- interpreter.start()
+ from langchain_daytona import DaytonaSandbox
- backend = AgentCoreSandbox(interpreter=interpreter)
+ sandbox = Daytona().create()
+ backend = DaytonaSandbox(sandbox=sandbox)
- results = backend.download_files(["hello.py"])
+ results = backend.download_files(["/src/index.py", "/output.txt"])
for result in results:
if result.content is not None:
print(f"{result.path}: {result.content.decode()}")
else:
print(f"Failed to download {result.path}: {result.error}")
-
- interpreter.stop()
```
@@ -970,31 +966,35 @@ Use `download_files()` to retrieve files from the sandbox after the agent finish
print(f"Failed to download {result.path}: {result.error}")
```
-
+
```bash pip
- pip install langchain-daytona
+ pip install langchain-agentcore-codeinterpreter
```
```bash uv
- uv add langchain-daytona
+ uv add langchain-agentcore-codeinterpreter
```
```python
- from daytona import Daytona
+ from bedrock_agentcore.tools.code_interpreter_client import CodeInterpreter
- from langchain_daytona import DaytonaSandbox
+ from langchain_agentcore_codeinterpreter import AgentCoreSandbox
- sandbox = Daytona().create()
- backend = DaytonaSandbox(sandbox=sandbox)
+ interpreter = CodeInterpreter(region="us-west-2")
+ interpreter.start()
- results = backend.download_files(["/src/index.py", "/output.txt"])
+ backend = AgentCoreSandbox(interpreter=interpreter)
+
+ results = backend.download_files(["hello.py"])
for result in results:
if result.content is not None:
print(f"{result.path}: {result.content.decode()}")
else:
print(f"Failed to download {result.path}: {result.error}")
+
+ interpreter.stop()
```
diff --git a/src/oss/python/integrations/sandboxes/index.mdx b/src/oss/python/integrations/sandboxes/index.mdx
index d996a6cd6b..d5ed93c782 100644
--- a/src/oss/python/integrations/sandboxes/index.mdx
+++ b/src/oss/python/integrations/sandboxes/index.mdx
@@ -7,10 +7,10 @@ description: "Integrate with sandbox providers using LangChain Python."
Sandboxes provide isolated execution environments for running agent-generated code safely. Learn more about [sandboxes](/oss/deepagents/sandboxes).