prodigy 0.4.4

Turn ad-hoc Claude sessions into reproducible development pipelines with parallel AI agents
Documentation
//! # Prodigy
//!
//! A dead simple Rust CLI tool that makes your code better through Claude CLI integration.
//!
//! ## Usage
//!
//! ```bash
//! prodigy cook [--focus "area"] [-n iterations] [--map "pattern"] [--args "value"]
//! ```
//!
//! ## Modules
//!
//! - `abstractions` - Trait-based abstractions for external dependencies (git, Claude CLI)
//! - `commands` - Modular command handler architecture for extensible workflow commands
//! - `config` - Configuration management for the tool
//! - `cook` - Core cooking command implementation with mapping support
//! - `core` - Pure business logic functions without I/O operations
//! - `effects` - Effect-based operations for composable I/O
//! - `env` - Environment abstraction layer for dependency injection and testing
//! - `git` - Granular, testable git operations layer
//! - `init` - Initialize Prodigy commands in projects
//! - `storage` - Global storage management for events, DLQ, and job state
//! - `subprocess` - Unified subprocess abstraction layer for testing
//! - `worktree` - Git worktree management for parallel sessions
//! - `unified_session` - Unified session management with event-driven architecture
//! - `testing` - Testing utilities and fixtures for comprehensive testing
pub mod abstractions;
pub mod app;
pub mod cli;
pub mod commands;
pub mod config;
pub mod cook;
pub mod core;
pub mod effects;
pub mod env;
pub mod error;
pub mod git;
pub mod init;
pub mod resume_logic;
pub mod storage;
pub mod subprocess;
pub mod worktree;

pub mod testing;
pub mod unified_session;

// Re-export core error types for library consumers
pub use error::{ErrorCode, ProdigyError};

/// Standard result type for library operations
pub type LibResult<T> = Result<T, ProdigyError>;