[package]
edition = "2021"
rust-version = "1.81"
name = "loop-agent-sdk"
version = "0.1.0"
authors = ["OAR Technologies Inc <csouthern@looplocal.io>"]
build = false
exclude = [
"examples/",
"scripts/",
"mcp/",
"tests/fixtures/",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Trustless agent SDK for Loop Protocol — intent-based execution on Solana."
homepage = "https://github.com/OAR-Technologies-Inc/loop-protocol/tree/main/agent-sdk"
documentation = "https://docs.rs/loop-agent-sdk"
readme = "README.md"
keywords = [
"solana",
"agents",
"mcp",
"defi",
"rewards",
]
categories = [
"cryptography::cryptocurrencies",
"web-programming",
]
license = "MIT"
repository = "https://github.com/OAR-Technologies-Inc/loop-protocol"
[package.metadata.docs.rs]
all-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
action = []
agent = [
"lambda",
"dynamodb",
"privacy",
"webhook",
"notifications",
"supabase",
]
cli = ["clap"]
default = ["full"]
dynamodb = [
"aws-sdk-dynamodb",
"aws-config",
"tokio",
]
full = [
"action",
"perception",
"state",
]
lambda = [
"aws-lambda-runtime",
"tokio",
]
notifications = [
"dynamodb",
"reqwest",
]
perception = []
privacy = [
"hmac",
"zeroize",
"rand",
"aws-sdk-secretsmanager",
"aws-config",
"tokio",
]
state = []
supabase = [
"reqwest",
"tokio",
]
webhook = [
"privacy",
"hmac",
]
[lib]
name = "loop_agent_sdk"
path = "src/lib.rs"
[[bin]]
name = "loop-agent"
path = "src/bin/loop_agent.rs"
required-features = ["agent"]
[[bin]]
name = "loop-cli"
path = "src/bin/loop_cli.rs"
required-features = ["cli"]
[dependencies.aws-config]
version = "1.0"
optional = true
[dependencies.aws-lambda-runtime]
version = "0.13"
optional = true
package = "lambda_runtime"
[dependencies.aws-sdk-dynamodb]
version = "1.0"
optional = true
[dependencies.aws-sdk-secretsmanager]
version = "1.0"
optional = true
[dependencies.base64]
version = "0.22"
[dependencies.borsh]
version = "1.5"
features = ["derive"]
[dependencies.chrono]
version = "0.4"
features = ["serde"]
[dependencies.clap]
version = "4.5"
features = [
"derive",
"env",
]
optional = true
[dependencies.hex]
version = "0.4"
[dependencies.hmac]
version = "0.12"
optional = true
[dependencies.rand]
version = "0.8"
optional = true
[dependencies.reqwest]
version = "0.12"
features = ["json"]
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.sha2]
version = "0.10"
[dependencies.solana-client]
version = "2.0"
[dependencies.solana-sdk]
version = "2.0"
[dependencies.spl-associated-token-account]
version = "4.0"
[dependencies.spl-token]
version = "6.0"
[dependencies.tokio]
version = "1.0"
features = ["full"]
optional = true
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dependencies.zeroize]
version = "1.7"
optional = true
[dev-dependencies.pretty_assertions]
version = "1.4"
[dev-dependencies.tokio-test]
version = "0.4"