[package]
edition = "2024"
name = "sprawling"
version = "0.0.8"
build = "build.rs"
include = [
"build.rs",
"src/**",
"web-dist/**",
]
publish = true
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Run many agents on one machine as a city: one binary, a browser client it serves, and one append-only, hash-chained Ledger."
homepage = "https://github.com/2youg1/sprawling-agents"
readme = "README.md"
keywords = [
"agents",
"llm",
"harness",
"ledger",
"cli",
]
categories = [
"command-line-utilities",
"development-tools",
]
license = "MPL-2.0"
repository = "https://github.com/2youg1/sprawling-agents"
[features]
default = ["sandbox"]
sandbox = ["runtime/wasm"]
[lib]
name = "sprawling"
path = "src/lib.rs"
[[bin]]
name = "sprawling"
path = "src/main.rs"
[dependencies.accounting]
version = "=0.0.8"
package = "sprawling-accounting"
[dependencies.agent_protocols]
version = "=0.0.8"
package = "sprawling-agent-protocols"
[dependencies.axum]
version = "0.8"
features = ["ws"]
[dependencies.browser]
version = "=0.0.8"
package = "sprawling-browser"
[dependencies.city]
version = "=0.0.8"
package = "sprawling-city"
[dependencies.collab]
version = "=0.0.8"
package = "sprawling-collab"
[dependencies.cpu-time]
version = "1"
[dependencies.crossterm]
version = "0.29"
features = [
"events",
"windows",
]
default-features = false
[dependencies.desktop]
version = "=0.0.8"
package = "sprawling-desktop"
[dependencies.futures-util]
version = "0.3"
features = ["sink"]
default-features = false
[dependencies.gateway]
version = "=0.0.8"
package = "sprawling-gateway"
[dependencies.getrandom]
version = "0.4"
[dependencies.kernel]
version = "=0.0.8"
package = "sprawling-kernel"
[dependencies.memory-stats]
version = "1.2"
[dependencies.qrcodegen]
version = "1.8"
[dependencies.remote_access]
version = "=0.0.8"
package = "sprawling-remote-access"
[dependencies.reqwest]
version = "0.13"
features = [
"blocking",
"rustls-no-provider",
"json",
"http2",
"system-proxy",
"socks",
]
default-features = false
[dependencies.runtime]
version = "=0.0.8"
package = "sprawling-runtime"
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.storage]
version = "=0.0.8"
package = "sprawling-storage"
[dependencies.sysinfo]
version = "0.39"
features = [
"system",
"disk",
]
default-features = false
[dependencies.thread-priority]
version = "3.1"
[dependencies.tokio]
version = "1"
features = [
"rt-multi-thread",
"net",
"macros",
"signal",
"sync",
"time",
]
[dependencies.tokio-tungstenite]
version = "0.29"
features = [
"connect",
"handshake",
]
default-features = false
[dependencies.toml]
version = "1.1"
[dependencies.wire]
version = "=0.0.8"
features = ["server"]
default-features = false
package = "sprawling-wire"
[dev-dependencies.tempfile]
version = "3"
[build-dependencies.flate2]
version = "1"
[target."cfg(windows)".dependencies.win32job]
version = "2.0.3"
[lints.clippy]
arithmetic_side_effects = "deny"
as_conversions = "deny"
dbg_macro = "deny"
expect_used = "deny"
fn_params_excessive_bools = "deny"
indexing_slicing = "deny"
let_underscore_must_use = "deny"
let_underscore_untyped = "deny"
panic = "deny"
string_slice = "deny"
todo = "deny"
unimplemented = "deny"
unreachable = "deny"
unwrap_used = "deny"
wildcard_enum_match_arm = "deny"
[lints.rust]
unsafe_code = "forbid"
[lints.rust.unexpected_cfgs]
level = "deny"
priority = 0
check-cfg = ["cfg(kani)"]