[package]
name = "harnesscli"
version = "0.1.6"
edition = "2021"
description = "Unified CLI to run Claude Code, OpenCode, Codex, or Cursor from a single interface"
license = "MIT"
rust-version = "1.80"
repository = "https://github.com/ayshptk/harness-cli"
homepage = "https://harness.lol"
readme = "README.md"
keywords = ["cli", "ai", "agent", "claude", "codex"]
categories = ["command-line-utilities", "development-tools"]
exclude = ["docs/", "clidocs/", ".github/", "install.sh"]
[lib]
name = "harness"
path = "src/lib.rs"
[[bin]]
name = "harness"
path = "src/main.rs"
[dependencies]
async-trait = "0.1"
clap = { version = "4", features = ["derive"] }
dirs = "6"
futures = "0.3"
nix = { version = "0.29", features = ["signal", "process"] }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
toml = "0.8"
thiserror = "2"
ureq = "3"
tokio = { version = "1", features = ["full"] }
tokio-stream = { version = "0.1", features = ["io-util"] }
tokio-util = { version = "0.7", features = ["rt"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
which = "7"
[dev-dependencies]
assert_cmd = "2"
predicates = "3"
tempfile = "3"
tokio-test = "0.4"
[profile.release]
lto = true
strip = true
codegen-units = 1
panic = "abort"
[lints.rust]
unsafe_code = "deny"