Files
tkmind_go/crates/goose/Cargo.toml
T
Elias Posen 8631caa890 Use Port of Context (pctx) for code mode (#6765)
Signed-off-by: Elias Posen <elias@posen.ch>
Signed-off-by: Adrian Cole <adrian@tetrate.io>
Co-authored-by: Adrian Cole <adrian@tetrate.io>
2026-02-03 12:15:49 -05:00

167 lines
4.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 = []
[lints]
workspace = true
[build-dependencies]
tokio = { workspace = true }
reqwest = { workspace = true, features = [
"json",
"rustls-tls-native-roots",
], default-features = false }
[dependencies]
lru = "0.16"
rmcp = { workspace = true, features = [
"client",
"reqwest",
"transport-child-process",
"transport-streamable-http-client",
"transport-streamable-http-client-reqwest",
] }
anyhow = { workspace = true }
thiserror = "1.0"
futures = { workspace = true }
dirs = "5.0"
reqwest = { workspace = true, features = ["rustls-tls-native-roots", "json", "cookies", "gzip", "brotli", "deflate", "zstd", "charset", "http2", "stream", "blocking", "multipart"], default-features = false }
tokio = { workspace = true }
serde = { version = "1.0", features = ["derive"] }
serde_json = { workspace = true }
serde_urlencoded = "0.7"
jsonschema = "0.30.0"
uuid = { version = "1.0", features = ["v4"] }
regex = { workspace = true }
async-trait = "0.1.89"
async-stream = "0.3"
minijinja = { version = "2.12.0", features = ["loader"] }
include_dir = "0.7.4"
tiktoken-rs = "0.6.0"
chrono = { version = "0.4.38", features = ["serde"] }
clap = { version = "4.4", features = ["derive"] }
indoc = "2.0.5"
nanoid = "0.4"
sha2 = "0.10"
base64 = { workspace = true }
url = { workspace = true }
axum = "0.8.1"
webbrowser = { workspace = true }
lazy_static = "1.5.0"
tracing = { workspace = true }
tracing-subscriber = "0.3"
tracing-opentelemetry = "0.28"
opentelemetry = "0.27"
opentelemetry-appender-tracing = "0.27"
opentelemetry_sdk = { version = "0.27", features = ["rt-tokio", "metrics"] }
opentelemetry-otlp = { version = "0.27", features = [
"http-proto",
"reqwest-client",
] }
keyring = { version = "3.6.2", features = [
"apple-native",
"windows-native",
"sync-secret-service",
"vendored",
] }
serde_yaml = "0.9.34"
once_cell = "1.20.2"
etcetera = { workspace = true }
rand = "0.8.5"
utoipa = { version = "4.1", features = ["chrono"] }
tokio-cron-scheduler = "0.14.0"
urlencoding = "2.1"
v_htmlescape = "0.15"
sqlx = { version = "0.8", features = [
"runtime-tokio-rustls",
"sqlite",
"chrono",
"json",
] }
# 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 = "9.3.1"
blake3 = "1.5"
fs2 = "0.4.3"
tokio-stream = "0.1.17"
tempfile = "3.15.0"
dashmap = "6.1"
ahash = "0.8"
tokio-util = { version = "0.7.15", 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 = "0.21.0"
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 = { version = "1.0.4", default-features = false, features = [
"derive",
] }
insta = "1.43.2"
paste = "1.0.0"
posthog-rs = "0.3.7"
shellexpand = "3.1.1"
indexmap = "2.12.0"
ignore = { workspace = true }
which = { workspace = true }
pctx_code_mode = "^0.2.2"
unbinder = "0.1.7"
[target.'cfg(target_os = "windows")'.dependencies]
winapi = { version = "0.3", features = ["wincred"] }
# Platform-specific GPU acceleration for Whisper
[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"] }
[dev-dependencies]
serial_test = { workspace = true }
mockall = "0.13.1"
wiremock = { workspace = true }
tokio = { workspace = true }
tokio-util = { version = "0.7.15", features = ["compat"] }
dotenvy = "0.15.7"
ctor = "0.2.9"
test-case = { workspace = true }
env-lock = { workspace = true }
rmcp = { workspace = true, features = ["transport-streamable-http-server"] }
[[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"