-
Notifications
You must be signed in to change notification settings - Fork 178
Expand file tree
/
Copy pathCargo.toml
More file actions
98 lines (90 loc) · 2.46 KB
/
Cargo.toml
File metadata and controls
98 lines (90 loc) · 2.46 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
[workspace]
resolver = "3"
members = [
"crates/mofa-monitoring",
"crates/mofa-kernel",
"crates/mofa-foundation",
"crates/mofa-runtime",
"crates/mofa-cli",
"crates/mofa-plugins",
"crates/mofa-macros",
"crates/mofa-sdk",
"crates/mofa-ffi",
"crates/mofa-extra",
"tests",
"crates/mofa-gateway",
"crates/mofa-smith",
"crates/mofa-integrations",
"crates/mofa-local-llm",
]
exclude = ["examples"]
[workspace.lints.rust]
dead_code = "allow"
unused_variables = "allow"
unused = "allow"
unexpected_cfgs = "allow"
[workspace.package]
version = "0.1.0"
edition = "2024"
authors = ["MoFA Contributors <contributors@mofa.org>"]
license = "Apache-2.0"
rust-version = "1.85"
repository = "https://github.com/mofa-org/mofa"
homepage = "https://github.com/mofa-org/mofa"
[workspace.dependencies]
reqwest = "0.12"
async-trait = "0.1"
# axum 0.8+ required — uses {param} route syntax (not :param)
axum = "0"
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
serde_yaml = "0.9"
bincode = "1.3"
tokio = { version = "1", features = ["full", "rt-multi-thread", "sync"] }
tokio-stream = { version = "0.1", features = ["net"] }
anyhow = "1.0"
uuid = { version = "1.7", features = ["v4", "v7"] }
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["env-filter", "json"] }
thiserror = "1.0"
base64 = "0.22"
error-stack = "0.6.0"
futures = "0.3"
parking_lot = "0.12"
crossbeam-channel = "0.5"
dashmap = "5.5"
eyre = "0.6"
flume = "0.10"
# Hot-reload support
notify = { version = "6.1", features = ["serde"] }
libloading = "0.8"
sha2 = "0.10"
tempfile = "3.8"
# OpenTelemetry for distributed tracing (compatible versions)
opentelemetry = { version = "0.27", features = ["trace", "metrics"] }
opentelemetry_sdk = { version = "0.27", features = ["rt-tokio"] }
opentelemetry-otlp = { version = "0.27", features = ["tonic"] }
opentelemetry-semantic-conventions = "0.27"
opentelemetry-jaeger = { version = "0.26", features = ["rt-tokio"] }
tracing-opentelemetry = "0.28"
# HTTP and observability
prometheus = "0.13"
tower = "0.5"
tower-http = { version = "0.6", features = ["cors", "trace", "compression-gzip"] }
rand = "0.8"
chrono = { version = "0.4", features = ["serde"] }
cron = "0.12"
hex = "0.4"
lazy_static = "1.4"
# Actor framework for ReAct agents
ractor = "0"
# Configuration file support (multi-format)
config = { version = "0.14", features = [
"toml",
"json",
"yaml",
"ini",
"ron",
"json5",
] }
regex = "1"