Islo (islo.dev) sandbox integration for Deep Agents
Project description
langchain-islo
Islo sandbox integration for Deep Agents.
Islo provides long-running, reconnect-surviving AI sandboxes on real Linux VMs, with pause/resume, snapshots, and a gateway layer for secret isolation and egress policies.
Install
uv add langchain-islo
# or: pip install langchain-islo
Set your API key (keys look like ak_...):
export ISLO_API_KEY="ak_..."
Sandbox image requirement. The inherited filesystem tools (
read,write,edit,ls,glob,grep) shell out topython3and GNUgrepinside the sandbox. Use an image that provides them (e.g.python:3.12-slim, orubuntu/debianwithpython3+grepinstalled). Alpine/BusyBoxgreplacks the flags these tools need.
Usage
Wrap an existing Islo sandbox and use it as a Deep Agents backend:
from islo import Islo
from langchain_islo import IsloSandbox
client = Islo() # reads ISLO_API_KEY
sandbox = client.sandboxes.create_sandbox(image="python:3.12-slim")
backend = IsloSandbox(client=client, sandbox=sandbox)
result = backend.execute("echo hello")
print(result.output) # "hello"
# Filesystem tools are inherited from BaseSandbox:
backend.write("/workspace/app.py", "print('hi')\n")
print(backend.read("/workspace/app.py").file_data["content"])
Lifecycle helper
IsloProvider creates, attaches to, and deletes sandboxes for you:
from langchain_islo import IsloProvider
provider = IsloProvider() # reads ISLO_API_KEY
backend = provider.get_or_create(image="python:3.12-slim")
try:
print(backend.execute("uname -a").output)
finally:
provider.delete(sandbox_id=backend.id)
What you get
IsloSandbox subclasses deepagents.backends.sandbox.BaseSandbox, so it
implements the full SandboxBackendProtocol:
| Method | Backed by |
|---|---|
execute() |
Islo exec_in_sandbox + result polling (commands run via sh -c) |
upload_files() / download_files() |
Islo sandbox files endpoint (raw bytes) |
ls / read / write / edit / glob / grep |
Inherited from BaseSandbox |
id |
Islo sandbox id |
Async variants (aexecute, aupload_files, adownload_files, ...) are provided
by the base class via thread offloading.
Configuration
| Env var | Default | Purpose |
|---|---|---|
ISLO_API_KEY |
— | Bearer token used to authenticate |
ISLO_BASE_URL |
https://api.islo.dev |
Control-plane base URL |
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file langchain_islo-0.0.4.tar.gz.
File metadata
- Download URL: langchain_islo-0.0.4.tar.gz
- Upload date:
- Size: 148.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
d1674de7c1d547d8601ce9897ec23ca158cf46befc01ddddd16bc6cdb1c2e13e
|
|
| MD5 |
ce324024d8a058eb6a37857f1c7b54f5
|
|
| BLAKE2b-256 |
538c51efded613d511c1ab27a3941c1ba9564f443d55b4d2481d8fa4db3b24bb
|
Provenance
The following attestation bundles were made for langchain_islo-0.0.4.tar.gz:
Publisher:
workflow.yml on islo-labs/langchain-islo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
langchain_islo-0.0.4.tar.gz -
Subject digest:
d1674de7c1d547d8601ce9897ec23ca158cf46befc01ddddd16bc6cdb1c2e13e - Sigstore transparency entry: 1746367897
- Sigstore integration time:
-
Permalink:
islo-labs/langchain-islo@b5fe3347b735055beb91d3b4cc96a4dde79d446a -
Branch / Tag:
refs/tags/v0.0.4 - Owner: https://github.com/islo-labs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@b5fe3347b735055beb91d3b4cc96a4dde79d446a -
Trigger Event:
release
-
Statement type:
File details
Details for the file langchain_islo-0.0.4-py3-none-any.whl.
File metadata
- Download URL: langchain_islo-0.0.4-py3-none-any.whl
- Upload date:
- Size: 10.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
807188bc183f8ed93f6f20e6c90e6c64e4032fd256071f7e79d06a0abc4483d8
|
|
| MD5 |
48424e80f68356aeace459f2036d4ecd
|
|
| BLAKE2b-256 |
812ea78ce6d2d85bcbabb79d35e37cdb03b30fc397bb0e2266f1b6d93f772776
|
Provenance
The following attestation bundles were made for langchain_islo-0.0.4-py3-none-any.whl:
Publisher:
workflow.yml on islo-labs/langchain-islo
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
langchain_islo-0.0.4-py3-none-any.whl -
Subject digest:
807188bc183f8ed93f6f20e6c90e6c64e4032fd256071f7e79d06a0abc4483d8 - Sigstore transparency entry: 1746368116
- Sigstore integration time:
-
Permalink:
islo-labs/langchain-islo@b5fe3347b735055beb91d3b4cc96a4dde79d446a -
Branch / Tag:
refs/tags/v0.0.4 - Owner: https://github.com/islo-labs
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
workflow.yml@b5fe3347b735055beb91d3b4cc96a4dde79d446a -
Trigger Event:
release
-
Statement type: