goose/crates/goose/Cargo.toml
jh-block fc292c73ec
Some checks are pending
Canary / Upload Install Script (push) Blocked by required conditions
Canary / bundle-desktop (push) Blocked by required conditions
Canary / bundle-desktop-linux (push) Blocked by required conditions
Canary / bundle-desktop-windows (push) Blocked by required conditions
Canary / Prepare Version (push) Waiting to run
Canary / build-cli (push) Blocked by required conditions
Canary / Release (push) Blocked by required conditions
Cargo Deny / deny (push) Waiting to run
CI / changes (push) Waiting to run
CI / Check Rust Code Format (push) Blocked by required conditions
CI / Build and Test Rust Project (push) Blocked by required conditions
CI / Lint Rust Code (push) Blocked by required conditions
CI / Check OpenAPI Schema is Up-to-Date (push) Blocked by required conditions
CI / Test and Lint Electron Desktop App (push) Blocked by required conditions
Live Provider Tests / check-fork (push) Waiting to run
Live Provider Tests / changes (push) Blocked by required conditions
Live Provider Tests / Build Binary (push) Blocked by required conditions
Live Provider Tests / Smoke Tests (push) Blocked by required conditions
Live Provider Tests / Smoke Tests (Code Execution) (push) Blocked by required conditions
Live Provider Tests / Compaction Tests (push) Blocked by required conditions
Live Provider Tests / goose server HTTP integration tests (push) Blocked by required conditions
Publish Docker Image / docker (push) Waiting to run
Scorecard supply-chain security / Scorecard analysis (push) Waiting to run
Fix Windows MSVC linking issues (#7511)
2026-02-25 22:59:32 +00:00

166 lines
5 KiB
TOML

[package]
name = "goose"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
repository.workspace = true
description.workspace = true
[features]
default = []
cuda = ["candle-core/cuda", "candle-nn/cuda", "llama-cpp-2/cuda"]
[lints]
workspace = true
[dependencies]
lru = { workspace = true }
rmcp = { workspace = true, features = [
"client",
"reqwest",
"transport-child-process",
"transport-streamable-http-client",
"transport-streamable-http-client-reqwest",
] }
anyhow = { workspace = true }
thiserror = { workspace = true }
futures = { workspace = true }
dirs = { workspace = true }
reqwest = { workspace = true, features = ["rustls", "json", "cookies", "gzip", "brotli", "deflate", "zstd", "charset", "http2", "stream", "blocking", "multipart", "system-proxy"], default-features = false }
tokio = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
serde_urlencoded = "0.7"
jsonschema = "0.30.0"
uuid = { workspace = true }
regex = { workspace = true }
async-trait = { workspace = true }
async-stream = { workspace = true }
minijinja = { version = "2.12.0", features = ["loader"] }
include_dir = { workspace = true }
tiktoken-rs = "0.6.0"
chrono = { workspace = true }
clap = { workspace = true }
indoc = { workspace = true }
nanoid = "0.4"
sha2 = "0.10"
base64 = { workspace = true }
url = { workspace = true }
axum = { workspace = true }
webbrowser = { workspace = true }
lazy_static = "1.5.0"
tracing = { workspace = true }
tracing-subscriber = { workspace = true }
tracing-opentelemetry = { workspace = true }
opentelemetry = { workspace = true }
opentelemetry-appender-tracing = { workspace = true }
opentelemetry_sdk = { workspace = true }
opentelemetry-otlp = { workspace = true }
opentelemetry-stdout = { workspace = true }
keyring = { version = "3.6.2", features = [
"apple-native",
"windows-native",
"sync-secret-service",
"vendored",
] }
serde_yaml = { workspace = true }
once_cell = { workspace = true }
etcetera = { workspace = true }
rand = { workspace = true }
utoipa = { workspace = true, features = ["chrono"] }
tokio-cron-scheduler = "0.14.0"
urlencoding = { workspace = true }
v_htmlescape = "0.15"
sqlx = { version = "0.8", default-features = false, features = [
"runtime-tokio-rustls",
"sqlite",
"chrono",
"json",
"macros",
"migrate",
] }
# For Bedrock provider
aws-config = { version = "=1.8.12", features = ["behavior-version-latest"] }
aws-smithy-types = "=1.3.5"
aws-sdk-bedrockruntime = "=1.120.0"
# For SageMaker TGI provider
aws-sdk-sagemakerruntime = "1.62.0"
# For GCP Vertex AI provider auth
jsonwebtoken = { version = "10.3.0", features = ["aws_lc_rs"] }
blake3 = "1.5"
fs2 = { workspace = true }
tokio-stream = { workspace = true }
tempfile = { workspace = true }
dashmap = "6.1"
ahash = "0.8"
tokio-util = { workspace = true, features = ["compat"] }
unicode-normalization = "0.1"
goose-mcp = { path = "../goose-mcp" }
# For local Whisper transcription
candle-core = { version = "0.9", default-features = false }
candle-nn = { version = "0.9", default-features = false }
candle-transformers = { version = "0.9", default-features = false }
byteorder = "1.5.0"
tokenizers = { version = "0.21.0", default-features = false, features = ["onig"] }
hf-hub = { version = "0.4.3", default-features = false, features = ["tokio"] }
symphonia = { version = "0.5", features = ["all"] }
rubato = "0.16"
zip = "0.6"
sys-info = "0.9"
schemars = { workspace = true, features = [
"derive",
] }
insta = "1.43.2"
paste = "1.0.0"
posthog-rs = "0.3.7"
shellexpand = { workspace = true }
indexmap = "2.12.0"
ignore = { workspace = true }
which = { workspace = true }
pctx_code_mode = "^0.2.3"
unbinder = "0.1.7"
pulldown-cmark = "0.13.0"
llama-cpp-2 = { git = "https://github.com/jh-block/llama-cpp-rs.git", branch = "goose-patches", features = ["sampler"] }
encoding_rs = "0.8.35"
[target.'cfg(target_os = "windows")'.dependencies]
winapi = { version = "0.3", features = ["wincred"] }
# Platform-specific GPU acceleration for Whisper and local inference
[target.'cfg(target_os = "macos")'.dependencies]
candle-core = { version = "0.9", default-features = false, features = ["metal"] }
candle-nn = { version = "0.9", default-features = false, features = ["metal"] }
llama-cpp-2 = { git = "https://github.com/jh-block/llama-cpp-rs.git", branch = "goose-patches", features = ["sampler", "metal"] }
[dev-dependencies]
serial_test = { workspace = true }
mockall = "0.13.1"
wiremock = { workspace = true }
tokio = { workspace = true }
tokio-util = { workspace = true, features = ["compat"] }
dotenvy = { workspace = true }
ctor = "0.2.9"
test-case = { workspace = true }
env-lock = { workspace = true }
rmcp = { workspace = true, features = ["transport-streamable-http-server"] }
goose-test-support = { path = "../goose-test-support" }
[[example]]
name = "agent"
path = "examples/agent.rs"
[[example]]
name = "databricks_oauth"
path = "examples/databricks_oauth.rs"
[[bin]]
name = "build_canonical_models"
path = "src/providers/canonical/build_canonical_models.rs"