Skip to main content

sistemo (Python)

Run AI agents and untrusted code in real isolated Firecracker microVMs — self-host for free or use the cloud.

pip install sistemo

Quickstart (< 10 lines)

from sistemo import Sandbox

with Sandbox() as sb:                       # reads SISTEMO_API_KEY
    result = sb.run("python -c 'print(2 + 2)'")
    print(result.stdout, result.exit_code)  # "4\n" 0

Get an API key from the dashboard (Dashboard → API Keys), then:

export SISTEMO_API_KEY=sk_live_xxxxxxxx

Configuration

SISTEMO_API_KEY your key (sk_live_…). Required.
SISTEMO_BASE_URL override the API URL (default https://api.sistemo.io; e.g. your self-hosted control plane).

Or pass them explicitly: Sandbox(api_key="sk_live_…", base_url="https://…").

API

sb = Sandbox(vcpus=1, memory_mb=1024, stack="base")  # provisions a microVM
res = sb.run("echo hi && uname -a", timeout=30)            # -> ExecResult
res.stdout, res.stderr, res.exit_code, res.ok
sb.close()                                                 # destroy (or use `with`)

A read API key can list resources but cannot create sandboxes or run code — use a full key with the SDK.

Errors

from sistemo import APIError, AuthError, QuotaExceededError

try:
    with Sandbox() as sb:
        sb.run("...")
except QuotaExceededError as e:
    # An account limit was reached. `detail` names which one and how much is in
    # use. Retrying SUCCEEDS once you free that resource — stop or destroy a
    # machine, delete a volume — or once the limit is raised.
    print(e.detail)
except AuthError:
    ...          # 401/403 — key missing/invalid/revoked, or read-only key
except APIError as e:
    print(e.status, e.detail, e.code)

Both QuotaExceededError and AuthError arrive as HTTP 403, so catch QuotaExceededError first — it is a subclass of APIError, not of AuthError, precisely because the two need opposite handling: an auth failure never succeeds on retry, a quota refusal does once you free something. GET /v1/quotas reports every limit alongside current usage.

Zero runtime dependencies (Python stdlib only). Apache-2.0.

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

sistemo-0.1.0.tar.gz (17.9 kB view details)

Uploaded Source

Built Distribution

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

sistemo-0.1.0-py3-none-any.whl (13.6 kB view details)

Uploaded Python 3

File details

Details for the file sistemo-0.1.0.tar.gz.

File metadata

  • Download URL: sistemo-0.1.0.tar.gz
  • Upload date:
  • Size: 17.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for sistemo-0.1.0.tar.gz
Algorithm Hash digest
SHA256 057b2f9827615ea577d8afaaf6831bd8df0a69e86bd57e5c6af79bb7bf263636
MD5 9660d0a6015061a86ad22afb0ab526bf
BLAKE2b-256 0d2c3f0898ea96105fa9f8464bd2f3352ccfea636f2c999d44d38f7fe2ff479f

See more details on using hashes here.

Provenance

The following attestation bundles were made for sistemo-0.1.0.tar.gz:

Publisher: release.yml on sistemo0/sistemo-sdk

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

File details

Details for the file sistemo-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: sistemo-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 13.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for sistemo-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 2151adaed23cc532a5738a7465771002d347d80b9e7fd5ffde999cdd45288f24
MD5 d6957aca81427c9343a86600f8359b00
BLAKE2b-256 8b4bcc0b100fc3d7e00d1fc04ff3f942e6d7537918cb0c2d99d740e4ef855c47

See more details on using hashes here.

Provenance

The following attestation bundles were made for sistemo-0.1.0-py3-none-any.whl:

Publisher: release.yml on sistemo0/sistemo-sdk

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

Release history Release notifications | RSS feed

0.1.1

2 files

This release

0.1.0 This release

2 files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page