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.3.tar.gz (129.2 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.3-py3-none-any.whl (9.9 kB view details)

Uploaded Python 3

File details

Details for the file langchain_islo-0.0.3.tar.gz.

File metadata

  • Download URL: langchain_islo-0.0.3.tar.gz
  • Upload date:
  • Size: 129.2 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.3.tar.gz
Algorithm Hash digest
SHA256 31501c2aa24b6eb4d6adba9cb9638c865468eb8501bded5ed0942dec75c0d1d4
MD5 0e12930e40dcecf6b97103e27830ae65
BLAKE2b-256 c5f2946ae08affca9de814bcbda137d479cf644f22f2f4483aff8a16994244d4

See more details on using hashes here.

Provenance

The following attestation bundles were made for langchain_islo-0.0.3.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.3-py3-none-any.whl.

File metadata

  • Download URL: langchain_islo-0.0.3-py3-none-any.whl
  • Upload date:
  • Size: 9.9 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.3-py3-none-any.whl
Algorithm Hash digest
SHA256 d86d6b7c9e3a57c87660f00202a6c3d9b6d4232ce513f512071efc5cc5f129b9
MD5 35184a31335ca53c7b69919cd588ba3b
BLAKE2b-256 5ff38e84366e71d68c0979ef5e4e469031b8671e58a9c0f06cf7f28a94b65dbb

See more details on using hashes here.

Provenance

The following attestation bundles were made for langchain_islo-0.0.3-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