[package] name = "goose" version.workspace = true edition.workspace = true authors.workspace = true license.workspace = true repository.workspace = true description.workspace = true [lints] workspace = true [build-dependencies] tokio = { version = "1.43", features = ["full"] } reqwest = { version = "0.12.9", features = ["json", "rustls-tls-native-roots"], default-features = false } [dependencies] mcp-client = { path = "../mcp-client" } mcp-core = { path = "../mcp-core" } rmcp = { workspace = true } anyhow = "1.0" thiserror = "1.0" futures = "0.3" dirs = "5.0" reqwest = { version = "0.12.9", features = [ "rustls-tls-native-roots", "json", "cookies", "gzip", "brotli", "deflate", "zstd", "charset", "http2", "stream", "blocking" ], default-features = false } tokio = { version = "1.43", features = ["full"] } serde = { version = "1.0", features = ["derive"] } serde_json = "1.0" serde_urlencoded = "0.7" jsonschema = "0.30.0" uuid = { version = "1.0", features = ["v4"] } regex = "1.11.1" async-trait = "0.1" async-stream = "0.3" minijinja = { version = "2.10.2", features = ["loader"] } include_dir = "0.7.4" tiktoken-rs = "0.6.0" chrono = { version = "0.4.38", features = ["serde"] } indoc = "2.0.5" nanoid = "0.4" sha2 = "0.10" base64 = "0.21" url = "2.5" urlencoding = "2.1" axum = "0.8.1" webbrowser = "0.8" lazy_static = "1.5.0" tracing = "0.1" tracing-subscriber = "0.3" keyring = { version = "3.6.1", features = ["apple-native", "windows-native", "sync-secret-service", "vendored"] } serde_yaml = "0.9.34" once_cell = "1.20.2" etcetera = "0.8.0" rand = "0.8.5" utoipa = { version = "4.1", features = ["chrono"] } tokio-cron-scheduler = "0.14.0" # For Bedrock provider aws-config = { version = "1.5.16", features = ["behavior-version-latest"] } aws-smithy-types = "1.2.13" aws-sdk-bedrockruntime = "1.74.0" # For SageMaker TGI provider aws-sdk-sagemakerruntime = "1.62.0" # For GCP Vertex AI provider auth jsonwebtoken = "9.3.1" blake3 = "1.5" fs2 = "0.4.3" tokio-stream = "0.1.17" dashmap = "6.1" ahash = "0.8" tokio-util = "0.7.15" # Vector database for tool selection lancedb = "0.13" arrow = "52.2" [target.'cfg(target_os = "windows")'.dependencies] winapi = { version = "0.3", features = ["wincred"] } [dev-dependencies] criterion = "0.5" tempfile = "3.15.0" serial_test = "3.2.0" mockall = "0.13.1" wiremock = "0.6.0" tokio = { version = "1.43", features = ["full"] } temp-env = "0.3.6" dotenv = "0.15.0" ctor = "0.2.9" [[example]] name = "agent" path = "examples/agent.rs" [[example]] name = "databricks_oauth" path = "examples/databricks_oauth.rs" [[example]] name = "async_token_counter_demo" path = "examples/async_token_counter_demo.rs" [[bench]] name = "tokenization_benchmark" harness = false