cli-stream 0.1.0

Generic streaming subprocess engine: spawn a CLI, stream its stdout/stderr lines, cancel it (SIGTERM→SIGKILL), with PATH augmentation so packaged apps find node/CLIs.
Documentation
[package]
name = "cli-stream"
version.workspace = true
edition.workspace = true
rust-version.workspace = true
description = "Generic streaming subprocess engine: spawn a CLI, stream its stdout/stderr lines, cancel it (SIGTERM→SIGKILL), with PATH augmentation so packaged apps find node/CLIs."
license.workspace = true
readme = "README.md"
repository.workspace = true
keywords = ["subprocess", "process", "stream", "spawn", "cli"]
categories = ["command-line-utilities", "os"]

# Pure, leaf utility — no agent / harness / Compose knowledge. Both the
# bob SDK (`bob-rs`) and the harness framework (`agent-harness`) depend on
# this for process streaming; keeping it a leaf is what lets `bob-rs` stay
# standalone without a dependency cycle.
[lib]

[dependencies]
serde.workspace = true
# Typed errors (StreamError) with a real `std::io::Error` source — derive
# Display + the Error source chain without hand-writing the impls. Build-time
# proc-macro only; no runtime weight added to the leaf.
thiserror.workspace = true

# `ProcessHandle::cancel()` sends SIGTERM on unix (SIGKILL fallback);
# Windows uses `Child::kill()` (TerminateProcess).
[target.'cfg(unix)'.dependencies]
libc = "0.2"