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.8

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.8
File Size Uploaded
tai42_sandbox_local-2.0.8.tar.gz 31.6 kB Details

Built distribution (wheel)

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

Total release size: 53.3 kB

Release files / tai42_sandbox_local-2.0.8.tar.gz

Download URL tai42_sandbox_local-2.0.8.tar.gz
Size 31.6 kB
Tags Source
SHA-256 checksum
How to use checksums
0251a726e8fa5cb6e4367f3995f569ef1942637d724fb8d7454318aa15e7e452
BLAKE2b-256 checksum
How to use checksums
e1d0932475bf49054827ef6eb7d828a3ec43b618fded749fbb554269548c14bc
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.8-py3-none-any.whl

Download URL tai42_sandbox_local-2.0.8-py3-none-any.whl
Size 21.7 kB
Tags Python 3
SHA-256 checksum
How to use checksums
b0fba615903e0ba04e9561660efdeed49e82a4a77653c16777e7a1e37d212e29
BLAKE2b-256 checksum
How to use checksums
52c39392ce8926878a1823d24099bf79c513858a576200b32d09980275e9ab61
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

This release

2.0.8 This release

2 release files

2.0.7

2 release files

2.0.6

2 release files

2.0.5

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