Skip to main content

tai42-sandbox-local

License: Apache 2.0

A direct/host sandbox provider for the TAI ecosystem. It implements the tai42_contract.sandbox.Sandbox surface over plain host subprocesses and the host filesystem: it runs a session's code directly on the host, with no container and no isolation. Exactly one sandbox provider is active per deployment, and the operator picks direct/host execution by installing this provider instead of a container provider — the consumers are provider-agnostic and acquire whichever is installed.

The TAI ecosystem

TAI is an open-source runtime for MCP tools, agents, and workflows. A Sandbox is "where a session's code runs" — a pluggable provider the runtime acquires through one seam. This package is one such provider (direct/host execution); any package can back the same contract, so this repo is this provider's own full doc home, and the documentation site covers the platform-level story:

Its only tai-* dependencies are tai42-contract (the Sandbox ABC, the session / stream models, SandboxPolicy, the error family, PluginItemKind.SANDBOX, and the tai42_app.sandboxes facet) and tai42-kit (ManagedSandbox / ManagedSandboxSession — the shared ledger, TTL/reap, orphan recovery, and the session-create policy chokepoint — plus SandboxDispatchSettings and the conformance suite). It pulls in no third-party runtime dependency: it drives the host with the standard library only.

Security model

This provider gives no isolation: isolation="none" means arbitrary session code runs on the host with the host's filesystem, network, and secrets in reach. It is for a trusted, single-tenant box, not untrusted flows. It accepts only what it can honestly enforce and rejects the rest loudly:

  • isolation="none" accepted; container / vm rejected. The operator isolation floor defaults to container, so a deployment installing this provider must set TAI_MCP_SANDBOX_ISOLATION=none or every session create rejects.
  • network="egress" accepted; none / internal rejected.
  • a cpu / memory_mb cap rejected.
  • image is inert — the host is the execution environment; the operator installs the runtime on the host.

For enforced isolation or network lockdown, install a container provider instead.

Configuration

The SANDBOX_LOCAL_ env group: SANDBOX_LOCAL_ROOT (the host workspace root) and SANDBOX_LOCAL_BASE_PATH (the clean-env PATH), plus the shared dispatch knobs (SANDBOX_LOCAL_REAP_INTERVAL_SECONDS sets the platform reaper's sweep interval, SANDBOX_LOCAL_EXEC_DEFAULT_TIMEOUT_SECONDS the timeout of a short exec that names none). See docs/index.mdx for the full table and the durability model.

Metadata

Release files for tai42-sandbox-local 2.0.5

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tai42-sandbox-local 2.0.5
File Size Uploaded
tai42_sandbox_local-2.0.5.tar.gz 31.6 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for tai42-sandbox-local 2.0.5
File Interpreter ABI Platform
tai42_sandbox_local-2.0.5-py3-none-any.whl Python 3 none any Details

Total release size: 53.3 kB

Release files / tai42_sandbox_local-2.0.5.tar.gz

Download URL tai42_sandbox_local-2.0.5.tar.gz
Size 31.6 kB
Tags Source
SHA-256 checksum
How to use checksums
44ec079ab0e38535577b59d492c84e81bb97c20098833f71758e464a4fc327a7
BLAKE2b-256 checksum
How to use checksums
0efc2a29793cc1a145bb489184db9d3f34bc6aab4c81732af2a2a993c011826c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release files / tai42_sandbox_local-2.0.5-py3-none-any.whl

Download URL tai42_sandbox_local-2.0.5-py3-none-any.whl
Size 21.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
5d598c46cc3a9b7c64579da8c86c40840b176a9b882dc2cdf2f8f70ebf0a5830
BLAKE2b-256 checksum
How to use checksums
2493705848c1a5f8e6c6d70d145b24e97f9df8774268f85bf185655498ea075c
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/7.0.0 CPython/3.13.14

Release history Release notifications | RSS feed

2.0.8

2 release files

2.0.7

2 release files

2.0.6

2 release files

This release

2.0.5 This release

2 release files

2.0.4

2 release files

2.0.3

2 release files

2.0.2

2 release files

2.0.1

2 release files

2.0.0

2 release files

1.3.7

2 release files

1.3.6

2 release files

1.3.5

2 release files

1.3.4

2 release files

1.3.3

2 release files

1.3.2

2 release files

1.3.1

2 release files

1.3.0

2 release files

1.2.2

2 release files

1.2.1

2 release files

1.2.0

2 release files

1.1.16

2 release files

1.1.15

2 release files

1.1.14

2 release files

1.1.13

2 release files

1.1.12

2 release files

1.1.11

2 release files

1.1.10

2 release files

1.1.9

2 release files

1.1.8

2 release files

1.1.7

2 release files

1.1.6

2 release files

1.1.5

2 release files

1.1.4

2 release files

1.1.3

2 release files

1.1.2

2 release files

1.1.1

2 release files

1.1.0

2 release files

1.0.3

2 release files

1.0.2

2 release files

1.0.1

2 release files

1.0.0

2 release 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