[package]
edition = "2021"
name = "aster-core"
version = "0.11.0"
authors = ["AsterCloud"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Aster - An AI agent framework"
readme = false
license = "Apache-2.0"
repository = "https://github.com/astercloud/aster-rust"
[features]
default = [
"telemetry-posthog",
"telemetry-otlp",
"provider-aws",
]
provider-aws = [
"dep:aws-config",
"dep:aws-smithy-types",
"dep:aws-sdk-bedrockruntime",
"dep:aws-sdk-sagemakerruntime",
]
telemetry-otlp = [
"dep:tracing-opentelemetry",
"dep:opentelemetry",
"dep:opentelemetry-appender-tracing",
"dep:opentelemetry_sdk",
"dep:opentelemetry-otlp",
"dep:tonic",
]
telemetry-posthog = ["dep:posthog-rs"]
[lib]
name = "aster"
path = "src/lib.rs"
[[bin]]
name = "build_canonical_models"
path = "src/providers/canonical/build_canonical_models.rs"
[[example]]
name = "agent"
path = "examples/agent.rs"
[[example]]
name = "databricks_oauth"
path = "examples/databricks_oauth.rs"
[[example]]
name = "image_tool"
path = "examples/image_tool.rs"
[[example]]
name = "tetrate_auth"
path = "examples/tetrate_auth.rs"
[[test]]
name = "acp_integration_test"
path = "tests/acp_integration_test.rs"
[[test]]
name = "agent"
path = "tests/agent.rs"
[[test]]
name = "agents_alignment_integration_tests"
path = "tests/agents_alignment_integration_tests.rs"
[[test]]
name = "bash_tool_property_tests"
path = "tests/bash_tool_property_tests.rs"
[[test]]
name = "common"
path = "tests/common.rs"
[[test]]
name = "context_integration_tests"
path = "tests/context_integration_tests.rs"
[[test]]
name = "file_tool_property_tests"
path = "tests/file_tool_property_tests.rs"
[[test]]
name = "mcp_integration_test"
path = "tests/mcp_integration_test.rs"
[[test]]
name = "mcp_wrapper_property_tests"
path = "tests/mcp_wrapper_property_tests.rs"
[[test]]
name = "permission_audit_property_tests"
path = "tests/permission_audit_property_tests.rs"
[[test]]
name = "permission_condition_property_tests"
path = "tests/permission_condition_property_tests.rs"
[[test]]
name = "permission_enum_compatibility_property_tests"
path = "tests/permission_enum_compatibility_property_tests.rs"
[[test]]
name = "permission_import_export_property_tests"
path = "tests/permission_import_export_property_tests.rs"
[[test]]
name = "permission_inheritance_property_tests"
path = "tests/permission_inheritance_property_tests.rs"
[[test]]
name = "permission_manager_property_tests"
path = "tests/permission_manager_property_tests.rs"
[[test]]
name = "permission_merger_property_tests"
path = "tests/permission_merger_property_tests.rs"
[[test]]
name = "permission_migration_property_tests"
path = "tests/permission_migration_property_tests.rs"
[[test]]
name = "permission_persistence_property_tests"
path = "tests/permission_persistence_property_tests.rs"
[[test]]
name = "permission_query_property_tests"
path = "tests/permission_query_property_tests.rs"
[[test]]
name = "permission_restriction_property_tests"
path = "tests/permission_restriction_property_tests.rs"
[[test]]
name = "permission_stats_property_tests"
path = "tests/permission_stats_property_tests.rs"
[[test]]
name = "permission_template_property_tests"
path = "tests/permission_template_property_tests.rs"
[[test]]
name = "providers"
path = "tests/providers.rs"
[[test]]
name = "repetition_inspector_tests"
path = "tests/repetition_inspector_tests.rs"
[[test]]
name = "scheduler_test_support"
path = "tests/scheduler_test_support.rs"
[[test]]
name = "search_tool_property_tests"
path = "tests/search_tool_property_tests.rs"
[[test]]
name = "session_id_propagation_test"
path = "tests/session_id_propagation_test.rs"
[[test]]
name = "subagent_tool_tests"
path = "tests/subagent_tool_tests.rs"
[[test]]
name = "task_manager_property_tests"
path = "tests/task_manager_property_tests.rs"
[[test]]
name = "tetrate_streaming"
path = "tests/tetrate_streaming.rs"
[[test]]
name = "tool_inspection_manager_tests"
path = "tests/tool_inspection_manager_tests.rs"
[[test]]
name = "tool_registry_property_tests"
path = "tests/tool_registry_property_tests.rs"
[[test]]
name = "tool_timeout_property_tests"
path = "tests/tool_timeout_property_tests.rs"
[dependencies.ahash]
version = "0.8"
[dependencies.anyhow]
version = "1.0"
[dependencies.aster-models]
version = "0.11.0"
[dependencies.async-stream]
version = "0.3"
[dependencies.async-trait]
version = "0.1.89"
[dependencies.aws-config]
version = "=1.8.12"
features = ["behavior-version-latest"]
optional = true
[dependencies.aws-sdk-bedrockruntime]
version = "=1.120.0"
optional = true
[dependencies.aws-sdk-sagemakerruntime]
version = "1.62.0"
optional = true
[dependencies.aws-smithy-types]
version = "=1.3.5"
optional = true
[dependencies.axum]
version = "0.8.1"
[dependencies.base64]
version = "0.21"
[dependencies.blake3]
version = "1.5"
[dependencies.boa_engine]
version = "0.21.0"
[dependencies.boa_gc]
version = "0.21"
[dependencies.chrono]
version = "0.4.38"
features = ["serde"]
[dependencies.chrono-tz]
version = "0.10"
[dependencies.clap]
version = "4.4"
features = ["derive"]
[dependencies.cron]
version = "0.15"
[dependencies.dashmap]
version = "6.1"
[dependencies.dirs]
version = "5.0"
[dependencies.etcetera]
version = "0.11.0"
[dependencies.fs2]
version = "0.4.3"
[dependencies.futures]
version = "0.3"
[dependencies.glob]
version = "0.3"
[dependencies.hex]
version = "0.4"
[dependencies.hmac]
version = "0.12"
[dependencies.hostname]
version = "0.4"
[dependencies.ignore]
version = "0.4.25"
[dependencies.include_dir]
version = "0.7.4"
[dependencies.indexmap]
version = "2.12.0"
[dependencies.indoc]
version = "2.0.5"
[dependencies.insta]
version = "1.43.2"
[dependencies.jsonschema]
version = "0.30.0"
[dependencies.jsonwebtoken]
version = "9.3.1"
[dependencies.keyring]
version = "3.6.2"
features = [
"apple-native",
"windows-native",
"sync-secret-service",
"vendored",
]
[dependencies.lazy_static]
version = "1.5.0"
[dependencies.lru]
version = "0.12"
[dependencies.minijinja]
version = "2.12.0"
features = ["loader"]
[dependencies.nanoid]
version = "0.4"
[dependencies.notify]
version = "8.2.0"
[dependencies.oauth2]
version = "5.0.0"
[dependencies.once_cell]
version = "1.20.2"
[dependencies.opentelemetry]
version = "0.27"
optional = true
[dependencies.opentelemetry-appender-tracing]
version = "0.27"
optional = true
[dependencies.opentelemetry-otlp]
version = "0.27"
features = [
"grpc-tonic",
"http-proto",
"reqwest-client",
]
optional = true
[dependencies.opentelemetry_sdk]
version = "0.27"
features = [
"rt-tokio",
"metrics",
]
optional = true
[dependencies.parking_lot]
version = "0.12"
[dependencies.paste]
version = "1.0.0"
[dependencies.posthog-rs]
version = "0.3.7"
optional = true
[dependencies.rand]
version = "0.8.5"
[dependencies.regex]
version = "1.11.1"
[dependencies.reqwest]
version = "0.12.9"
features = [
"rustls-tls-native-roots",
"json",
"cookies",
"gzip",
"brotli",
"deflate",
"zstd",
"charset",
"http2",
"stream",
"blocking",
]
default-features = false
[dependencies.rmcp]
version = "0.12.0"
features = [
"schemars",
"auth",
"client",
"reqwest",
"transport-child-process",
"transport-streamable-http-client",
"transport-streamable-http-client-reqwest",
]
[dependencies.schemars]
version = "1.0.4"
features = ["derive"]
default-features = false
[dependencies.scraper]
version = "0.20"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.serde_urlencoded]
version = "0.7"
[dependencies.serde_yaml]
version = "0.9.34"
[dependencies.sha2]
version = "0.10"
[dependencies.shellexpand]
version = "3.1.1"
[dependencies.sqlx]
version = "0.8"
features = [
"runtime-tokio-rustls",
"sqlite",
"chrono",
"json",
]
[dependencies.sys-info]
version = "0.9"
[dependencies.tempfile]
version = "3.15.0"
[dependencies.thiserror]
version = "1.0"
[dependencies.tiktoken-rs]
version = "0.6.0"
[dependencies.tokio]
version = "1.43"
features = [
"macros",
"rt-multi-thread",
"sync",
"time",
"fs",
"io-util",
"io-std",
"net",
"process",
"signal",
]
[dependencies.tokio-cron-scheduler]
version = "0.14.0"
[dependencies.tokio-stream]
version = "0.1.17"
[dependencies.tokio-tungstenite]
version = "0.28.0"
features = ["rustls-tls-native-roots"]
[dependencies.tokio-util]
version = "0.7.15"
[dependencies.tonic]
version = "0.12"
optional = true
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-opentelemetry]
version = "0.28"
optional = true
[dependencies.tracing-subscriber]
version = "0.3"
[dependencies.unbinder]
version = "0.1.7"
[dependencies.unicode-normalization]
version = "0.1"
[dependencies.url]
version = "2.5"
[dependencies.urlencoding]
version = "2.1"
[dependencies.utoipa]
version = "4.1"
features = ["chrono"]
[dependencies.uuid]
version = "1.0"
features = ["v4"]
[dependencies.webbrowser]
version = "1.0"
[dependencies.which]
version = "8.0.0"
[dependencies.zip]
version = "0.6"
[dev-dependencies.agent-client-protocol-schema]
version = "0.10.5"
[dev-dependencies.criterion]
version = "0.5"
[dev-dependencies.ctor]
version = "0.2.9"
[dev-dependencies.dotenvy]
version = "0.15.7"
[dev-dependencies.env-lock]
version = "1.0.1"
[dev-dependencies.mockall]
version = "0.13.1"
[dev-dependencies.proptest]
version = "1.5"
[dev-dependencies.rmcp]
version = "0.12.0"
features = [
"schemars",
"auth",
"transport-streamable-http-server",
]
[dev-dependencies.sacp]
version = "10.0.0"
[dev-dependencies.serial_test]
version = "3.2.0"
[dev-dependencies.temp-env]
version = "0.3.6"
[dev-dependencies.tempfile]
version = "3.15.0"
[dev-dependencies.test-case]
version = "3.3"
[dev-dependencies.tokio]
version = "1.43"
features = [
"macros",
"rt-multi-thread",
"sync",
"time",
"fs",
"io-util",
"io-std",
"net",
"process",
"signal",
]
[dev-dependencies.tokio-util]
version = "0.7.15"
features = ["compat"]
[dev-dependencies.wiremock]
version = "0.6.0"
[build-dependencies.reqwest]
version = "0.12.9"
features = [
"json",
"rustls-tls-native-roots",
]
default-features = false
[build-dependencies.tokio]
version = "1.43"
features = [
"macros",
"rt-multi-thread",
"sync",
"time",
"fs",
"io-util",
"io-std",
"net",
"process",
"signal",
]
[target.'cfg(target_os = "windows")'.dependencies.winapi]
version = "0.3"
features = ["wincred"]
[target.'cfg(target_os = "windows")'.dependencies.winreg]
version = "0.55"
[lints.clippy]
string_slice = "warn"
uninlined_format_args = "allow"