Skip to main content

Stateful, structured, safe shell sessions for AI agents - over local shells, SSH, and Docker.

Project description

execkit (Python)

Stateful, structured, safe shell sessions for AI agents - over local shells, SSH, and Docker. Native bindings to the execkit Rust core.

pip install execkit
import execkit
from execkit import Session, Policy

with Session.local(policy=Policy(deny=["rm"]), timeout=30.0) as s:
    r = s.exec("cd /app && npm ci")
    print(r.stdout, r.exit_code, r.cwd)

State (cwd, env) persists across exec calls. Every result is a structured ExecResult (split stdout/stderr, exit code, cwd, duration), already secret-redacted and output-bounded. Commands pass an advisory policy fence first.

Async callers: r = await asyncio.to_thread(s.exec, "npm ci") (the native call releases the GIL).

Unix-only (local sessions need a POSIX shell). See the project README for the full picture and the operator security model.

License

Apache-2.0.

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

execkit-0.8.0.tar.gz (74.4 kB view details)

Uploaded Source

Built Distributions

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

execkit-0.8.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (2.8 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ x86-64

execkit-0.8.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl (2.4 MB view details)

Uploaded CPython 3.8+manylinux: glibc 2.17+ ARM64

execkit-0.8.0-cp38-abi3-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

execkit-0.8.0-cp38-abi3-macosx_10_12_x86_64.whl (2.6 MB view details)

Uploaded CPython 3.8+macOS 10.12+ x86-64

File details

Details for the file execkit-0.8.0.tar.gz.

File metadata

  • Download URL: execkit-0.8.0.tar.gz
  • Upload date:
  • Size: 74.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.12

File hashes

Hashes for execkit-0.8.0.tar.gz
Algorithm Hash digest
SHA256 57223feb1852ef3e3121139f28088668c46e62b32c92cfabde1cfa0cd64c6873
MD5 91199e8bdc8e09f8671c8c204100bf83
BLAKE2b-256 ba2df6dd0cc5517b14822d6402e9fa2eb9e76a9033758a98980dfa86d7f53dfc

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.8.0.tar.gz:

Publisher: wheels.yml on blinkingbit-oss/execkit

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

File details

Details for the file execkit-0.8.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for execkit-0.8.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 3a50b1b967db481e48c16988884e5219f42301c046e5423bca8549a49959215c
MD5 859956ca3785c40cb8bd43d001f79b3e
BLAKE2b-256 f1de8e4194b6f68e5de928a3359bcfc9d0b2847c26115a51b1c4ae017a9f3b4f

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.8.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl:

Publisher: wheels.yml on blinkingbit-oss/execkit

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

File details

Details for the file execkit-0.8.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for execkit-0.8.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 fcd9f098afa9dc91a12311d34281649373ba6a7d4a5c8684868783f1c6728684
MD5 44e64c7b2c1c1c3428f111e17c75359d
BLAKE2b-256 4c5212b9674d5662b7d50310a0ba6acefd62f3537e67051ce60ad74498b13f90

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.8.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl:

Publisher: wheels.yml on blinkingbit-oss/execkit

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

File details

Details for the file execkit-0.8.0-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for execkit-0.8.0-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 b2e0a707ec9993821684ac9702c1cae6a74f8ea71a1955113d32f159ab0d356e
MD5 6e6afdb92ddb6d3ec19792432ee36518
BLAKE2b-256 de700d285d77560f1641cbebd7a4ecfb1992889633d584c82c5e4d92a76d2bda

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.8.0-cp38-abi3-macosx_11_0_arm64.whl:

Publisher: wheels.yml on blinkingbit-oss/execkit

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

File details

Details for the file execkit-0.8.0-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for execkit-0.8.0-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 55ccc058d839a6ad9e3033d1080161dcf30bbf3f94e96b6f8100bdf29d7cb1af
MD5 efead03ad9405a67479d0d882ce9ed68
BLAKE2b-256 f6db3d7cda48e7c4d882763ddf950cfba28acdffb684cf99c3d6bd005b895c15

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.8.0-cp38-abi3-macosx_10_12_x86_64.whl:

Publisher: wheels.yml on blinkingbit-oss/execkit

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