Skip to content

Agent Supervisor 0.1.2

Version 0.1.2 adds an async Python binding alongside the Rust API. It supports bounded one-shot command execution, output streaming, cancellation, deadlines, and structured termination results.

Added

  • An initial Python package under python/, implemented with PyO3 and maturin.
  • await run(...) for bounded stdout/stderr capture and structured results.
  • async with stream(...) for stdout/stderr events, optional bounded capture, deadlines, and cleanup when the stream context exits.
  • Python API documentation and tests for capture, streaming, output limits, deadlines, cancellation, and child cleanup.
  • Python wheel build and API test jobs for Linux, macOS, and Windows in CI.

Compatibility and availability

  • The Rust agent-supervisor crate remains the published core package.
  • The Python binding source is included in the GitHub repository but is not yet published to PyPI. Build it from a checkout with maturin; see the Python API guide.
  • The first Python API supports one-shot commands. Streaming commands close stdin immediately; interactive input and persistent process handles are not included.
  • Output is bounded. run() reports an output limit in the returned result; streaming raises a structured error after cleanup.

Validation

The Python API suite has 12 integration tests and passed locally on macOS while building and installing the Python 3.9 ABI-compatible wheel. CI now builds and runs those tests on Linux, macOS, and Windows. Native Rust platform tests remain governed by the main CI matrix.

License

Version 0.1.2 is licensed under Apache-2.0. See the repository LICENSE file for the complete terms.