[package]
name = "skiff-cli"
version = "0.1.2"
edition = "2021"
rust-version = "1.80"
description = "Progressive MCP / OpenAPI / GraphQL CLI for agents — fast warm discovery, sessions, spool"
license = "MIT"
readme = "README.md"
authors = ["Sami Khayatei Houssaini"]
repository = "https://github.com/samikh-git/skiff"
homepage = "https://github.com/samikh-git/skiff"
keywords = ["mcp", "cli", "openapi", "graphql", "ai"]
categories = ["command-line-utilities"]
exclude = [".tmp/", "target/"]
[[bin]]
name = "skiff"
path = "src/bin/skiff.rs"
[dependencies]
anyhow = "1"
clap = { version = "4", features = ["derive", "env"] }
hex = "0.4"
regex = "1"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
serde_yaml = "0.9"
sha2 = "0.10"
thiserror = "2"
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter"] }
chrono = { version = "0.4", default-features = false, features = ["clock", "std", "serde"] }
reqwest = { version = "0.13", default-features = false, features = ["json", "rustls", "multipart", "blocking", "stream", "query"] }
tokio = { version = "1", features = ["rt-multi-thread", "macros", "process", "signal", "time"] }
rmcp = { version = "3.1", default-features = false, features = [
"client",
"transport-child-process",
"transport-streamable-http-client-reqwest",
"reqwest",
"auth",
] }
shell-words = "1"
http = "1"
futures = "0.3"
sse-stream = "0.2"
url = "2"
async-trait = "0.1"
open = "5"
libc = "0.2"
base64 = "0.22"
toon-format = { version = "0.5", default-features = false }
[dev-dependencies]
assert_cmd = "2"
predicates = "3"
tempfile = "3"
tokio = { version = "1", features = ["rt-multi-thread", "macros"] }
[profile.release]
lto = true
codegen-units = 1
strip = true
panic = "abort"