[package] name = "goose-cli" version.workspace = true edition.workspace = true authors.workspace = true license.workspace = true repository.workspace = true description.workspace = true [lints] workspace = true [[bin]] name = "goose" path = "src/main.rs" [dependencies] goose = { path = "../goose" } goose-bench = { path = "../goose-bench" } goose-mcp = { path = "../goose-mcp" } rmcp = { workspace = true } agent-client-protocol = "0.4.0" clap = { version = "4.4", features = ["derive"] } cliclack = "0.3.5" console = "0.15.8" uuid = { version = "1.11", features = ["v4"] } dotenvy = "0.15.7" bat = "0.24.0" anyhow = "1.0" serde_json = "1.0" jsonschema = "0.30.0" tokio = { version = "1.43", features = ["full"] } futures = "0.3" serde = { version = "1.0", features = ["derive"] } # For serialization serde_yaml = "0.9" tempfile = "3" etcetera = "0.8.0" rand = "0.8.5" rustyline = "15.0.0" tracing = "0.1" chrono = "0.4" tracing-subscriber = { version = "0.3", features = ["env-filter", "fmt", "json", "time"] } tracing-appender = "0.2" once_cell = "1.20.2" shlex = "1.3.0" async-trait = "0.1.86" base64 = "0.22.1" regex = "1.11.1" nix = { version = "0.30.1", features = ["process", "signal"] } tar = "0.4" # Web server dependencies axum = { version = "0.8.1", features = ["ws", "macros"] } tower-http = { version = "0.5", features = ["cors", "fs", "auth"] } http = "1.0" webbrowser = "1.0" indicatif = "0.17.11" tokio-util = { version = "0.7.15", features = ["compat"] } is-terminal = "0.4.16" anstream = "0.6.18" url = "2.5.7" open = "5.3.2" [target.'cfg(target_os = "windows")'.dependencies] winapi = { version = "0.3", features = ["wincred"] } [dev-dependencies] tempfile = "3" temp-env = { version = "0.3.6", features = ["async_closure"] } test-case = "3.3" tokio = { version = "1.43", features = ["rt", "macros"] }