outrig-cli 0.1.0

Command-line tool for running LLM agents with podman-isolated MCP servers.
Documentation
[package]
name        = "outrig-cli"
description = "Command-line tool for running LLM agents with podman-isolated MCP servers."
build       = "build.rs"
version.workspace       = true
edition.workspace       = true
rust-version.workspace  = true
license.workspace       = true
authors.workspace       = true
readme                  = "README.md"
homepage.workspace      = true
documentation.workspace = true
repository.workspace    = true
keywords.workspace      = true
categories.workspace    = true

[features]
default   = []
e2e       = []
local-llm = ["dep:mistralrs-core", "dep:hf-hub", "dep:candle-core", "dep:indexmap"]
cuda      = ["candle-core?/cuda", "mistralrs-core?/cuda"]
# Metal's upstream dependency features are Apple-only. The public feature
# gates outrig's runtime path; macOS local-llm builds carry the backend deps.
metal     = []

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

[dependencies]
outrig = { path = "../outrig", version = "0.1.0" }

anyhow             = { workspace = true, default-features = true }
async-stream       = { workspace = true, default-features = true }
axum               = { workspace = true, features = ["http1", "tokio"] }
candle-core        = { workspace = true, optional = true }
clap               = { workspace = true, default-features = true, features = ["derive"] }
dialoguer          = { workspace = true, default-features = true, features = ["fuzzy-select"] }
directories        = { workspace = true, default-features = true }
futures-util       = { workspace = true, default-features = true }
heck               = { workspace = true, default-features = true }
hf-hub             = { workspace = true, optional = true }
indexmap           = { workspace = true, default-features = true, optional = true }
jiff               = { workspace = true, default-features = true }
mistralrs-core     = { workspace = true, optional = true }
rand               = { workspace = true, default-features = true }
regex              = { workspace = true, default-features = true }
reqwest            = { workspace = true, features = ["json", "rustls"] }
rig                = { workspace = true, features = ["reqwest", "rustls"] }
rmcp               = { workspace = true, features = ["base64", "client", "macros", "server", "transport-child-process", "transport-io", "transport-streamable-http-server"] }
schemars           = { workspace = true, default-features = true }
serde              = { workspace = true, default-features = true, features = ["derive"] }
serde_json         = { workspace = true, default-features = true }
tempfile           = { workspace = true, default-features = true }
thiserror          = { workspace = true, default-features = true }
tokio              = { workspace = true, default-features = true, features = ["rt-multi-thread", "macros", "io-util", "io-std", "net", "process", "signal", "fs", "time", "sync"] }
tokio-util         = { workspace = true, default-features = true }
toml               = { workspace = true, default-features = true, features = ["serde"] }
toml_edit          = { workspace = true, default-features = true }
tracing            = { workspace = true, default-features = true }
tracing-subscriber = { workspace = true, default-features = true, features = ["env-filter", "fmt"] }
walkdir            = { workspace = true, default-features = true }

[target.'cfg(target_os = "macos")'.dependencies]
candle-core    = { version = "=0.10.2", default-features = false, optional = true, features = ["metal"] }
mistralrs-core = { version = "=0.8.1", default-features = false, optional = true, features = ["metal"] }