[package]
edition = "2021"
name = "mixtape-core"
version = "0.3.0"
build = false
exclude = [
".cargo-husky/",
".claude/",
".github/",
".idea/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "An agentic AI framework for Rust"
homepage = "https://github.com/adlio/mixtape"
documentation = "https://docs.rs/mixtape-core"
readme = "README.md"
keywords = [
"ai",
"agents",
"llm",
"anthropic",
"tools",
]
categories = [
"development-tools",
"api-bindings",
"asynchronous",
]
license = "MIT"
repository = "https://github.com/adlio/mixtape"
[features]
anthropic = [
"dep:mixtape-anthropic-sdk",
"dep:base64",
]
bedrock = [
"dep:aws-config",
"dep:aws-sdk-bedrockruntime",
"dep:aws-smithy-types",
]
default = []
mcp = [
"dep:rmcp",
"dep:reqwest",
"dep:shellexpand",
]
session = []
test-utils = []
[lib]
name = "mixtape_core"
path = "src/lib.rs"
[[bin]]
name = "mock_mcp_server"
path = "tests/bin/mock_mcp_server.rs"
test = false
bench = false
required-features = ["mcp"]
[[example]]
name = "hello_world"
path = "examples/hello_world.rs"
required-features = ["bedrock"]
[[example]]
name = "hello_world_anthropic"
path = "examples/hello_world_anthropic.rs"
required-features = ["anthropic"]
[[example]]
name = "hierarchical_agents"
path = "examples/hierarchical_agents.rs"
required-features = ["bedrock"]
[[example]]
name = "interactive_agent"
path = "examples/interactive_agent.rs"
required-features = [
"bedrock",
"mcp",
"session",
]
[[example]]
name = "interactive_mcp_agent"
path = "examples/interactive_mcp_agent.rs"
required-features = [
"bedrock",
"mcp",
"session",
]
[[example]]
name = "interactive_mcp_agent_anthropic"
path = "examples/interactive_mcp_agent_anthropic.rs"
required-features = [
"anthropic",
"mcp",
"session",
]
[[example]]
name = "lorem_picsum_image"
path = "examples/lorem_picsum_image.rs"
required-features = ["bedrock"]
[[example]]
name = "model_verification"
path = "examples/model_verification.rs"
required-features = ["bedrock"]
[[example]]
name = "multi_turn"
path = "examples/multi_turn.rs"
required-features = ["bedrock"]
[[example]]
name = "multi_turn_anthropic"
path = "examples/multi_turn_anthropic.rs"
required-features = ["anthropic"]
[[example]]
name = "parallel_tools"
path = "examples/parallel_tools.rs"
required-features = ["bedrock"]
[[example]]
name = "parallel_tools_anthropic"
path = "examples/parallel_tools_anthropic.rs"
required-features = ["anthropic"]
[[example]]
name = "permissions"
path = "examples/permissions.rs"
required-features = ["bedrock"]
[[example]]
name = "streaming"
path = "examples/streaming.rs"
required-features = ["bedrock"]
[[example]]
name = "streaming_anthropic"
path = "examples/streaming_anthropic.rs"
required-features = ["anthropic"]
[[example]]
name = "weather_tool"
path = "examples/weather_tool.rs"
required-features = ["bedrock"]
[[example]]
name = "weather_tool_anthropic"
path = "examples/weather_tool_anthropic.rs"
required-features = ["anthropic"]
[[test]]
name = "agent_tests"
path = "tests/agent_tests.rs"
[[test]]
name = "agent_types_tests"
path = "tests/agent_types_tests.rs"
[[test]]
name = "events_tests"
path = "tests/events_tests.rs"
[[test]]
name = "mcp_client_tests"
path = "tests/mcp_client_tests.rs"
[[test]]
name = "model_tests"
path = "tests/model_tests.rs"
[[test]]
name = "session_tests"
path = "tests/session_tests.rs"
[[test]]
name = "tool_tests"
path = "tests/tool_tests.rs"
[dependencies.async-stream]
version = "0.3"
[dependencies.async-trait]
version = "0.1"
[dependencies.aws-config]
version = "1.5"
features = ["behavior-version-latest"]
optional = true
[dependencies.aws-sdk-bedrockruntime]
version = "1.59"
optional = true
[dependencies.aws-smithy-types]
version = "1.3"
features = [
"serde-serialize",
"serde-deserialize",
]
optional = true
[dependencies.base64]
version = "0.22"
optional = true
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.dirs]
version = "5.0"
[dependencies.futures]
version = "0.3"
[dependencies.glob]
version = "0.3"
[dependencies.mixtape-anthropic-sdk]
version = "0.3.0"
optional = true
[dependencies.parking_lot]
version = "0.12"
[dependencies.reqwest]
version = "0.12"
features = [
"rustls-tls",
"json",
]
optional = true
default-features = false
[dependencies.rmcp]
version = "0.11"
features = [
"client",
"transport-child-process",
"transport-streamable-http-client-reqwest",
]
optional = true
[dependencies.schemars]
version = "0.8"
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.sha2]
version = "0.10"
[dependencies.shellexpand]
version = "3.1"
optional = true
[dependencies.thiserror]
version = "1.0"
[dependencies.tokio]
version = "1.41"
features = ["full"]
[dependencies.uuid]
version = "1.0"
features = [
"v4",
"serde",
]
[dev-dependencies.aws-sdk-sts]
version = "1.0"
[dev-dependencies.cargo-husky]
version = "1"
features = ["user-hooks"]
default-features = false
[dev-dependencies.reqwest]
version = "0.12"
features = [
"rustls-tls",
"json",
]
default-features = false
[dev-dependencies.tempfile]
version = "3.14"
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.uuid]
version = "1.0"
features = [
"v4",
"serde",
]