[package] name = "fabro-agent" edition.workspace = true version.workspace = true publish = false license.workspace = true description = "A programmable agentic loop for coding agents" repository = "https://github.com/brynary/arc" readme = "README.md" keywords = ["llm", "ai", "agent", "coding"] categories = ["api-bindings"] [features] default = ["docker"] docker = ["fabro-sandbox/docker"] quarantine = [] [lib] doctest = false [lints] workspace = true [dependencies] clap.workspace = true anyhow.workspace = true fabro-auth = { path = "../../foundation/fabro-auth" } fabro-config = { path = "../../foundation/fabro-config", features = ["clap"] } fabro-types = { path = "../../foundation/fabro-types", features = ["clap"] } lithos-llm = { workspace = true, features = ["runtime"] } fabro-llm = { path = "../fabro-llm" } fabro-mcp = { path = "../fabro-mcp" } fabro-sandbox = { path = "../fabro-sandbox" } fabro-static.workspace = true fabro-template = { path = "../../foundation/fabro-template" } fabro-util = { path = "../../foundation/fabro-util" } fabro-vault = { path = "../../foundation/fabro-vault" } fabro-http.workspace = true thiserror.workspace = true serde.workspace = true serde_json.workspace = true strum.workspace = true tokio.workspace = true uuid.workspace = true futures.workspace = true async-trait.workspace = true jsonschema.workspace = true chrono.workspace = true tokio-util.workspace = true tracing.workspace = true toml.workspace = true dirs = "6" glob = "0.3" sha2.workspace = true shell-escape = "0.1" htmd = "0.5" [target.'cfg(unix)'.dependencies] libc = "0.2" [dev-dependencies] fabro-auth = { path = "../../foundation/fabro-auth", features = ["test-support"] } fabro-llm = { path = "../fabro-llm", features = ["test-support"] } insta.workspace = true tokio = { workspace = true, features = ["test-util", "macros"] } tempfile = "3" paste = "1" shlex = "1" fabro-sandbox = { path = "../fabro-sandbox", features = ["test-support"] } fabro-macros = { path = "../../foundation/fabro-macros" } httpmock = "0.8" fabro-test = { workspace = true } tracing-subscriber.workspace = true