[package]
name = "roba"
version = "0.9.0"
edition = "2024"
# No rust-version floor: roba is a binary (nobody depends on it as a
# library), so it tracks recent stable rather than carrying an MSRV.
# `cargo install` from source needs a current toolchain; brew/release
# binaries are unaffected.
authors = ["Josh Rotenberg <joshrotenberg@gmail.com>"]
license = "MIT OR Apache-2.0"
repository = "https://github.com/joshrotenberg/roba"
homepage = "https://github.com/joshrotenberg/roba"
documentation = "https://docs.rs/roba"
readme = "README.md"
description = "A sharp, focused sugaring of claude -p -- pipeable, composable, safe-by-default, session-re-enterable."
keywords = ["claude", "cli", "ai", "llm", "anthropic"]
categories = ["command-line-utilities"]

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

[dependencies]
anyhow = "1"
clap = { version = "4", features = ["derive"] }
clap_complete = "4"
claude-wrapper = "0.12.1"
dialoguer = { version = "0.12", default-features = false, features = ["fuzzy-select"] }
glob = "0.3"
indicatif = "0.18"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
tempfile = "3"
termimad = "0.34"
toml = "1"
tokio = { version = "1", features = ["macros", "rt-multi-thread"] }
# v4 UUID minting for `--detach` (client-side session handle). Minimal
# features: just the v4 generator, no serde / no formatting extras.
uuid = { version = "1", default-features = false, features = ["v4"] }

# Unix-only: `--detach` classifies this process's stdin (fstat/poll/read) to
# block input that the detached child -- whose stdin is /dev/null -- would
# silently lose. See `stdin_would_lose_data` in src/detach.rs.
[target.'cfg(unix)'.dependencies]
libc = "0.2"

[dev-dependencies]
assert_cmd = "2"
predicates = "3"

# The profile that 'dist' will build with
[profile.dist]
inherits = "release"
lto = "thin"
