prodigy 0.2.2

Turn ad-hoc Claude sessions into reproducible development pipelines with parallel AI agents
Documentation
[package]
name = "prodigy"
version = "0.2.2"
edition = "2021"
authors = ["Glen Baker <iepathos@gmail.com>"]
description = "Turn ad-hoc Claude sessions into reproducible development pipelines with parallel AI agents"
license = "MIT"
repository = "https://github.com/iepathos/prodigy"
readme = "README.md"
keywords = ["ai", "claude", "code-review", "automation", "development"]
categories = ["development-tools", "command-line-utilities"]

[dependencies]
clap = { version = "4.5", features = ["derive"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
tokio = { version = "1.45", features = ["rt-multi-thread", "fs", "process", "time", "macros", "sync", "io-util", "io-std", "signal"] }
anyhow = "1.0"
thiserror = "2.0"
tracing = "0.1"
log = "0.4"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
walkdir = "2.5"
regex = "1.11"
humantime-serde = "1.1"
chrono = { version = "0.4", features = ["serde"] }
toml = "0.9"
directories = "6.0"
notify = "8.2"
tempfile = "3.23"
shell-words = "1.1"
async-trait = "0.1"
sha2 = "0.10"
uuid = { version = "1.10", features = ["v4", "serde"] }
lru = "0.16"
futures = "0.3"
futures-util = "0.3"
glob = "0.3"
git2 = "0.20"
mime_guess = "2.0"
url = "2.5"
axum = { version = "0.8", features = ["ws"] }
tower-http = { version = "0.6", features = ["cors"] }
once_cell = "1.19"
rand = "0.9"
csv = "1.3"
# atty removed - using std::io::IsTerminal instead
signal-hook = "0.3"
indicatif = "0.18"
flate2 = "1.0"
zstd = "0.13"
lz4 = "1.28"
tokio-stream = "0.1"
hostname = "0.4"
nix = { version = "0.30", features = ["signal", "process"] }
sysinfo = "0.37.1"
dirs = "6.0.0"

[features]
default = []
vendored-openssl = ["git2/vendored-openssl"]

[build-dependencies]
clap = { version = "4.5", features = ["derive"] }
chrono = "0.4"
flate2 = "1.0"

[dev-dependencies]
criterion = { version = "0.7", features = ["html_reports", "async_tokio"] }
tempfile = "3.23"
libc = "0.2"
proptest = "1.8.0"

# Benchmark configurations
[[bench]]
name = "checkpoint_benchmarks"
harness = false

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

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

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

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

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

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

[profile.release]
# Aggressive optimizations for binary size reduction
opt-level = "z"        # Optimize for size
lto = true            # Enable Link Time Optimization
codegen-units = 1     # Single codegen unit for better optimization
strip = true          # Strip symbols from binary
panic = "abort"       # Smaller panic handler

[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(never)'] }