Skip to main content

Islo (islo.dev) sandbox integration for Deep Agents

Project description

langchain-islo

PyPI - Version PyPI - License

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 to python3 and GNU grep inside the sandbox. Use an image that provides them (e.g. python:3.12-slim, or ubuntu/debian with python3 + grep installed). Alpine/BusyBox grep lacks 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

langchain_islo-0.0.4.tar.gz (148.7 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

langchain_islo-0.0.4-py3-none-any.whl (10.2 kB view details)

Uploaded Python 3

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

Hashes for langchain_islo-0.0.4.tar.gz
Algorithm Hash digest
SHA256 d1674de7c1d547d8601ce9897ec23ca158cf46befc01ddddd16bc6cdb1c2e13e
MD5 ce324024d8a058eb6a37857f1c7b54f5
BLAKE2b-256 538c51efded613d511c1ab27a3941c1ba9564f443d55b4d2481d8fa4db3b24bb

See more details on using hashes here.

Provenance

The following attestation bundles were made for langchain_islo-0.0.4.tar.gz:

Publisher: workflow.yml on islo-labs/langchain-islo

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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

Hashes for langchain_islo-0.0.4-py3-none-any.whl
Algorithm Hash digest
SHA256 807188bc183f8ed93f6f20e6c90e6c64e4032fd256071f7e79d06a0abc4483d8
MD5 48424e80f68356aeace459f2036d4ecd
BLAKE2b-256 812ea78ce6d2d85bcbabb79d35e37cdb03b30fc397bb0e2266f1b6d93f772776

See more details on using hashes here.

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

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page