bashkit 0.1.0

Sandboxed bash interpreter for multi-tenant environments
Documentation
# BashKit core library
# Sandboxed bash interpreter for multi-tenant environments

[package]
name = "bashkit"
version.workspace = true
edition.workspace = true
license.workspace = true
authors.workspace = true
repository.workspace = true
description.workspace = true
keywords.workspace = true
categories.workspace = true
readme = "../../README.md"

[dependencies]
# Async runtime
tokio = { workspace = true }
async-trait = { workspace = true }
futures = { workspace = true }

# Error handling
thiserror = { workspace = true }
anyhow = { workspace = true }

# Serialization
serde = { workspace = true }
serde_json = { workspace = true }

# Regex
regex = { workspace = true }

# Glob matching
globset = { workspace = true }

# Date/Time
chrono = { workspace = true }

# HTTP client (for curl) - optional, enabled with network feature
reqwest = { workspace = true, optional = true }

# Fault injection for testing (optional)
fail = { workspace = true, optional = true }

# URL parsing
url = "2"

# JSON processing (jq)
jaq-core = { workspace = true }
jaq-std = { workspace = true }
jaq-json = { workspace = true }

# Compression (for gzip/gunzip)
flate2 = { workspace = true }

[features]
default = []
network = ["reqwest"]
# Enable fail points for security/fault injection testing
# Usage: FAILPOINTS="fail_point_name=action" cargo test --features failpoints
failpoints = ["fail/failpoints"]

[dev-dependencies]
tokio-test = { workspace = true }
pretty_assertions = { workspace = true }
insta = { workspace = true }
criterion = { version = "0.5", features = ["async_tokio"] }
proptest = { workspace = true }

[[bench]]
name = "parallel_execution"
harness = false

[[example]]
name = "agent_tool"
required-features = ["network"]