vtcode_bash_runner/
lib.rs

1//! Cross-platform command runner modeled after VT Code's original bash
2//! wrapper. The crate exposes a trait-based executor so downstream
3//! applications can swap the underlying process strategy (system shell,
4//! pure-Rust emulation, or dry-run logging) while reusing the higher-level
5//! helpers for workspace-safe filesystem manipulation.
6
7pub mod background;
8pub mod executor;
9pub mod policy;
10pub mod runner;
11
12pub use background::{BackgroundCommandManager, BackgroundTaskHandle, BackgroundTaskStatus};
13#[cfg(feature = "dry-run")]
14pub use executor::DryRunCommandExecutor;
15#[cfg(feature = "exec-events")]
16pub use executor::EventfulExecutor;
17#[cfg(feature = "pure-rust")]
18pub use executor::PureRustCommandExecutor;
19pub use executor::{
20    CommandCategory, CommandExecutor, CommandInvocation, CommandOutput, CommandStatus,
21    ProcessCommandExecutor, ShellKind,
22};
23pub use policy::{AllowAllPolicy, CommandPolicy, WorkspaceGuardPolicy};
24pub use runner::BashRunner;