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.7.0.tar.gz (74.2 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.7.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.7.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.7.0-cp38-abi3-macosx_11_0_arm64.whl (2.5 MB view details)

Uploaded CPython 3.8+macOS 11.0+ ARM64

execkit-0.7.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.7.0.tar.gz.

File metadata

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

File hashes

Hashes for execkit-0.7.0.tar.gz
Algorithm Hash digest
SHA256 cf7178b0843d6028d9752e767b6c791ee6631ecb6f5e290ba1009ca9909ca837
MD5 b908585d3c2f72c25f438cbf3b025767
BLAKE2b-256 ab0e919c9617a4080790e1434999275d857931a056cc3011e4a21a50324188bd

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.7.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.7.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.

File metadata

File hashes

Hashes for execkit-0.7.0-cp38-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.whl
Algorithm Hash digest
SHA256 cc92d8776ba15347db6c76a7972add303cbac30c22fe26b1ed864ecc7db66f0f
MD5 d5d3424174227a4ebd64bf7b34d10195
BLAKE2b-256 54c630b957742ec1f26f6ace2edac9de5172f5dd0d26f711d95cb0042dcb648f

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.7.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.7.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl.

File metadata

File hashes

Hashes for execkit-0.7.0-cp38-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.whl
Algorithm Hash digest
SHA256 e291a7d73827a7ed931c4c0f2401d4afb2dd15b19c2c2401d64c614edcc57daf
MD5 5bfcb20fcf9d49a7dc1bada2714c42b3
BLAKE2b-256 93f8b50009c70bcae814bd3b1ef5b2b93b1d0bc36e84f290b157a45c376e7b81

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.7.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.7.0-cp38-abi3-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for execkit-0.7.0-cp38-abi3-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 a0d669de7332bd5e8eb6b1763844cf901fefee98ee71956d2176fa197e35d756
MD5 3ff5825a61d7b796973a92390dfa6390
BLAKE2b-256 2992142075a04245b4bfd248c51a813d578b2bc78eca32706463fbc01a1f1f96

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.7.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.7.0-cp38-abi3-macosx_10_12_x86_64.whl.

File metadata

File hashes

Hashes for execkit-0.7.0-cp38-abi3-macosx_10_12_x86_64.whl
Algorithm Hash digest
SHA256 a8da52ecdf5cc728bb3330a5f5a83379a494626d61d76d100901610881cda902
MD5 43c95d4131977107ca13a1d9bbc7fb72
BLAKE2b-256 1f1fe429d4cbcafed2a5f5c4946c94464d2d37c4a5c0e8a1e8801636098ae062

See more details on using hashes here.

Provenance

The following attestation bundles were made for execkit-0.7.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