-
-
Notifications
You must be signed in to change notification settings - Fork 98
Expand file tree
/
Copy pathCargo.toml
More file actions
207 lines (187 loc) · 6.99 KB
/
Copy pathCargo.toml
File metadata and controls
207 lines (187 loc) · 6.99 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
[workspace]
resolver = "3"
members = [
# Core packages (publishable to crates.io)
"adk-core",
"adk-rust-macros",
"adk-agent",
"adk-model",
"adk-tool",
"adk-runner",
"adk-server",
"adk-session",
"adk-artifact",
"adk-memory",
"adk-cli",
"adk-realtime",
"adk-graph",
"adk-browser",
"adk-computer-use",
"adk-eval",
"adk-telemetry",
"adk-guardrail",
"adk-auth",
"adk-plugin",
"adk-skill",
"adk-rust",
"adk-gemini",
"adk-gcp",
"adk-code",
"adk-devtools",
"adk-sandbox",
"adk-rag",
"adk-audio",
"adk-deploy",
"adk-payments",
"adk-action",
"adk-anthropic",
"adk-retry-reflect",
# Python CodeRuntime for the CodeActAgent (Monty is on crates.io since 0.0.19)
"adk-codeact-monty",
# AWP protocol crates
"awp-types",
"adk-awp",
# ACP integration
"adk-acp",
# CLI tools
"cargo-adk",
# Repo-internal task runner (publish = false, never published)
"xtask",
# Local LLM inference (now publishable - mistralrs on crates.io)
"adk-mistralrs",
# Managed agent runtime
"adk-managed",
# Enterprise client SDK
"adk-enterprise",
# Benchmarking framework
"adk-bench",
]
exclude = [
# Extracted to standalone repo: https://github.com/zavora-ai/adk-studio
"adk-studio",
# Standalone example crates (have their own [workspace] key)
"examples/enterprise_custom_tool",
"examples/enterprise_hello",
"examples/eval_showcase",
# Reference implementations (not part of workspace)
"reference/adk-go",
"reference/mcp-rust-sdk",
"reference/gemini-rust",
# Learning materials (gitignored, not part of CI)
"learning",
]
[profile.dev]
debug = 1 # Line tables only — faster builds, still get backtraces
split-debuginfo = "packed"
incremental = true # Faster recompilation on code changes
opt-level = 0 # No optimization in dev — fastest compile
[profile.dev.package."*"]
opt-level = 1 # Slight optimization for dependencies (they rarely change)
debug = false # No debug info for deps — saves link time
[profile.release]
strip = true
opt-level = 3
lto = true
# Fast example builds: no debug info, max codegen parallelism
# Usage: cargo build --examples --profile example-dev
[profile.example-dev]
inherits = "dev"
opt-level = 0
debug = 0
codegen-units = 256
incremental = true
[profile.example-dev.package."*"]
incremental = false
opt-level = 1
# CI profile: like release but faster to compile (no LTO)
[profile.ci]
inherits = "release"
lto = false
strip = false
opt-level = 2
[workspace.package]
version = "2.2.0"
edition = "2024"
rust-version = "1.95"
license = "Apache-2.0"
authors = ["James Karanja Maina <james.karanja@zavora.ai>"]
homepage = "https://www.zavora.ai"
repository = "https://github.com/zavora-ai/adk-rust"
[workspace.dependencies]
# External dependencies
tokio = { version = "1.40", default-features = false }
tokio-stream = "0.1"
async-trait = "0.1"
futures = "0.3"
async-stream = "0.3"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
jsonschema = { version = "0.47", default-features = false }
thiserror = "2.0"
anyhow = "1.0"
uuid = { version = "1.23", features = ["v4", "serde"] }
chrono = { version = "0.4.44", features = ["serde"] }
regex = "1.10"
tracing = "0.1"
tracing-subscriber = "0.3"
opentelemetry = "0.32"
# Unify rustls crypto provider to 'aws-lc-rs' across the workspace.
rustls = { version = "0.23", features = ["aws-lc-rs"] }
tokio-tungstenite = { version = "0.28", features = ["rustls-tls-native-roots", "connect"] }
reqwest = { version = "0.12", default-features = false, features = ["json", "stream", "rustls-tls-native-roots", "multipart"] }
toml = "0.8"
sha2 = "0.10"
hex = "0.4"
flate2 = "1.0"
tar = "0.4"
zip = { version = "7.2", default-features = false, features = ["deflate"] }
livekit = { version = "=0.8.1", default-features = false, features = ["tokio", "native-tls"] }
# livekit 0.8.1 declares `livekit-data-stream = "0.1"`, and 0.1.2 changed
# `incoming::Manager::new`'s arity and added a `topic` field, so livekit's own
# source stops compiling. Pinned here until the livekit 0.8.4 stack lands.
livekit-data-stream = { version = "=0.1.1", default-features = false }
livekit-api = { version = "=0.6.1", default-features = false, features = ["services-tokio", "access-token"] }
livekit-datatrack = { version = "=0.1.13", default-features = false }
libwebrtc = { version = "=0.3.43", default-features = false }
webrtc-sys = { version = "=0.3.40", default-features = false }
# ADK internal crates (use { workspace = true } in member crates)
adk-core = { path = "adk-core", version = "2.2.0" }
adk-rust-macros = { path = "adk-rust-macros", version = "2.2.0" }
adk-agent = { path = "adk-agent", version = "2.2.0", default-features = false }
adk-model = { path = "adk-model", version = "2.2.0", default-features = false }
adk-tool = { path = "adk-tool", version = "2.2.0" }
adk-runner = { path = "adk-runner", version = "2.2.0", default-features = false }
adk-server = { path = "adk-server", version = "2.2.0" }
adk-session = { path = "adk-session", version = "2.2.0" }
adk-artifact = { path = "adk-artifact", version = "2.2.0" }
adk-memory = { path = "adk-memory", version = "2.2.0" }
adk-cli = { path = "adk-cli", version = "2.2.0", default-features = false }
adk-realtime = { path = "adk-realtime", version = "2.2.0" }
adk-graph = { path = "adk-graph", version = "2.2.0" }
adk-browser = { path = "adk-browser", version = "2.2.0" }
adk-computer-use = { path = "adk-computer-use", version = "2.2.0" }
adk-eval = { path = "adk-eval", version = "2.2.0" }
adk-telemetry = { path = "adk-telemetry", version = "2.2.0" }
adk-guardrail = { path = "adk-guardrail", version = "2.2.0" }
adk-auth = { path = "adk-auth", version = "2.2.0" }
adk-plugin = { path = "adk-plugin", version = "2.2.0" }
adk-skill = { path = "adk-skill", version = "2.2.0" }
adk-gemini = { path = "adk-gemini", version = "2.2.0" }
adk-gcp = { path = "adk-gcp", version = "2.2.0" }
adk-code = { path = "adk-code", version = "2.2.0" }
adk-codeact-monty = { path = "adk-codeact-monty", version = "2.2.0" }
adk-devtools = { path = "adk-devtools", version = "2.2.0" }
adk-sandbox = { path = "adk-sandbox", version = "2.2.0" }
adk-rag = { path = "adk-rag", version = "2.2.0" }
adk-audio = { path = "adk-audio", version = "2.2.0" }
adk-mistralrs = { path = "adk-mistralrs", version = "2.2.0", default-features = false }
adk-deploy = { path = "adk-deploy", version = "2.2.0" }
adk-payments = { path = "adk-payments", version = "2.2.0" }
adk-action = { path = "adk-action", version = "2.2.0" }
adk-anthropic = { path = "adk-anthropic", version = "2.2.0" }
adk-managed = { path = "adk-managed", version = "2.2.0", default-features = false }
adk-enterprise = { path = "adk-enterprise", version = "2.2.0" }
adk-bench = { path = "adk-bench", version = "2.2.0" }
awp-types = { path = "awp-types", version = "2.2.0" }
adk-awp = { path = "adk-awp", version = "2.2.0" }
adk-acp = { path = "adk-acp", version = "2.2.0" }