ralph-workflow 0.6.3

PROMPT-driven multi-agent orchestrator for git repos
Documentation
[package]
name = "ralph-workflow"
version = "0.6.3"
edition = "2021"
description = "PROMPT-driven multi-agent orchestrator for git repos"
authors = ["Mistlight"]
license = "AGPL-3.0-only"
readme = "README.md"
repository = "https://codeberg.org/mistlight/RalphWithReviewer"
homepage = "https://codeberg.org/mistlight/RalphWithReviewer"
keywords = ["ai", "agent", "git", "workflow", "automation"]
categories = ["command-line-utilities", "development-tools"]

[lib]
name = "ralph_workflow"
path = "src/lib.rs"

[[bin]]
name = "ralph"
path = "src/main.rs"

[features]
# INTEGRATION TEST GOES OUTSIDE OF THIS PACKAGE LOOK IN THE PARENT DIRECTORY
default = ["monitoring", "hardened-resume"]
# Enable monitoring/debugging APIs (printer, streaming_metrics)
monitoring = []
# Enable test utilities (TestLogger, TestPrinter, etc.) for integration testing
test-utils = []
# Enable hardened resume functionality (execution history, file state capture, recovery)
hardened-resume = []

[dependencies]
# CLI argument parsing
clap = { version = "4.4", features = ["derive", "env"] }
clap_complete = "4.4"

# JSON parsing with serde (100x faster than jq spawns)
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"

# SHA-256 checksums for checkpoint validation
sha2 = "0.10"

# Date/time handling
chrono = "0.4"

# Environment and process management
which = "6.0"

# Cross-platform home/config directory resolution
dirs = "5.0"

# Error handling
thiserror = "2.0"
anyhow = "1.0"

# TOML parsing for agent configuration files
toml = "0.8"

# Regex for pattern matching
regex = "1.10"

# Parse shell-like command strings (quotes/escapes) into argv
shell-words = "1.1"

# Tempfile for creating temporary directories
tempfile = "3.10"

# Signal handling for cleanup on Ctrl+C
ctrlc = "3.4"

# Git library for direct git operations (bypasses CLI)
git2 = "0.18"

# File system monitoring for PROMPT.md protection
notify = "6.1"

# UUID generation for unique run identifiers
uuid = { version = "1.10", features = ["v4", "serde"] }

# Compression for large file content in checkpoints
flate2 = "1.0"

# Base64 encoding for compressed data
base64 = "0.22"

# Simple HTTP client for fetching OpenCode API catalog
ureq = { version = "3.0", features = ["json"] }

# Levenshtein distance for fuzzy suggestions
strsim = "0.11"

# XML parsing for plan validation
quick-xml = "0.37"

[dev-dependencies]
# Testing utilities
tempfile = "3.10"
test-helpers = { path = "../test-helpers" }
# Serial test execution for tests that modify global state (env vars)
serial_test = "3"