[package] name = "goose-acp" version.workspace = true edition.workspace = true authors.workspace = true license.workspace = true repository.workspace = true description.workspace = true [[bin]] name = "goose-acp-server" path = "src/bin/server.rs" [[bin]] name = "generate-acp-schema" path = "src/bin/generate_acp_schema.rs" [features] default = ["code-mode"] code-mode = ["goose/code-mode"] [lints] workspace = true [dependencies] goose = { path = "../goose", default-features = false } goose-mcp = { path = "../goose-mcp" } rmcp = { workspace = true } sacp = { workspace = true } agent-client-protocol-schema = { version = "0.10", features = ["unstable"] } async-trait = { workspace = true } anyhow = { workspace = true } tokio = { workspace = true } tokio-util = { workspace = true, features = ["compat", "rt"] } tracing = { workspace = true } serde_json = { workspace = true } futures = { workspace = true } regex = { workspace = true } fs-err = "3" strum = { workspace = true } url = { workspace = true } # HTTP server dependencies axum = { workspace = true, features = ["ws"] } clap = { workspace = true } serde = { workspace = true, features = ["derive"] } tower-http = { workspace = true, features = ["cors"] } tracing-subscriber = { workspace = true, features = ["env-filter", "json"] } async-stream = { workspace = true } http-body-util = "0.1.3" uuid = { workspace = true, features = ["v7"] } schemars = { workspace = true, features = ["derive"] } goose-acp-macros = { path = "../goose-acp-macros" } [dev-dependencies] async-trait = { workspace = true } goose-test-support = { path = "../goose-test-support" } wiremock = { workspace = true } tempfile = { workspace = true } test-case = { workspace = true } axum = { workspace = true } rmcp = { workspace = true, features = ["transport-streamable-http-server"] } [package.metadata.cargo-machete] # Used to provide extras imports for sacp ignored = ["agent-client-protocol-schema"]