appam 0.2.0

High-throughput, traceable, reliable Rust agent framework for long-horizon AI sessions and easy extensibility
Documentation
[package]
name = "appam"
version = "0.2.0"
edition = "2021"
rust-version = "1.89"
authors = ["Winfunc Research"]
description = "High-throughput, traceable, reliable Rust agent framework for long-horizon AI sessions and easy extensibility"
license = "MIT"
repository = "https://github.com/winfunc/appam"
homepage = "https://github.com/winfunc/appam"
documentation = "https://docs.rs/appam"
readme = "README.md"
keywords = ["ai", "agent", "llm", "framework", "agents"]
categories = ["api-bindings", "command-line-utilities"]
exclude = [
    "docs/node_modules/**",
    "docs/.next/**",
    "docs/tsconfig.tsbuildinfo",
    "target/**",
    "logs/**",
    "data/**",
]

[[bin]]
name = "appam"
path = "src/main.rs"

[lib]
name = "appam"
path = "src/lib.rs"

[dependencies]
# Proc macros
appam_macros = { path = "appam_macros", version = "0.2.0" }

# Core async runtime
tokio = { version = "1.50", features = ["full"] }
async-trait = "0.1"

# Web server
axum = "0.8"
tower-http = { version = "0.6", features = ["cors", "trace"] }
tower_governor = "0.8"
governor = "0.10"

# Serialization
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
toml = "1.0"
schemars = "0.8.22"

# Error handling
anyhow = "1.0"

# HTTP client
reqwest = { version = "0.13", default-features = false, features = ["blocking", "json", "stream", "rustls", "http2", "gzip"] }
futures = "0.3"

# Logging and tracing
tracing = "0.1"
tracing-subscriber = { version = "0.3", features = ["fmt", "json", "env-filter"] }
tracing-appender = "0.2"

# Python integration
pyo3 = { version = "0.28", features = ["auto-initialize"], optional = true }

# CLI
clap = { version = "4.5", features = ["derive", "cargo"] }

# Interactive examples
rustyline = "17.0"

# Utilities
uuid = { version = "1.22", features = ["v4", "serde"] }
chrono = { version = "0.4", features = ["serde", "clock"] }
walkdir = "2.5"
once_cell = "1.21"
base64 = "0.22"
rand = "0.10"
url = "2.5"

# AWS SigV4 signing and EventStream decoding for Bedrock
# Latest compiler-compatible AWS crates for Rust 1.89.
aws-sigv4 = "=1.3.7"
aws-credential-types = { version = "=1.2.11", features = ["hardcoded-credentials"] }
aws-smithy-runtime-api = "=1.10.0"
aws-smithy-eventstream = "0.60"
http = "1.4"
sha2 = "0.10"
hex = "0.4"

# Database
sqlx = { version = "0.8", features = ["runtime-tokio-rustls", "sqlite", "chrono", "uuid"] }
bytes = "1.11.1"

[features]
default = []
python = ["pyo3"]

[dev-dependencies]
tempfile = "3.26"
rand = "0.10"
chrono = "0.4"
walkdir = "2.5"

[package.metadata.docs.rs]
all-features = true

[package.metadata.cargo-machete]
ignored = ["schemars"]