[dependencies.backoff]
features = ["tokio"]
optional = true
version = "0.4"
[dependencies.chrono]
features = ["serde"]
version = "0.4"
[dependencies.futures]
version = "0.3"
[dependencies.http]
version = "1"
[dependencies.portpicker]
optional = true
version = "0.1"
[dependencies.reqwest]
default-features = false
features = ["json", "stream", "rustls-tls"]
optional = true
version = "0.12"
[dependencies.reqwest-eventsource]
optional = true
version = "0.6"
[dependencies.serde]
features = ["derive"]
version = "1"
[dependencies.serde_json]
optional = true
version = "1"
[dependencies.thiserror]
version = "2"
[dependencies.tokio]
features = ["rt-multi-thread", "macros", "sync", "time"]
version = "1"
[dependencies.tokio-util]
version = "0.7"
[dependencies.tracing]
version = "0.1"
[dependencies.url]
version = "2"
[dependencies.urlencoding]
version = "2"
[dependencies.uuid]
features = ["serde", "v4"]
version = "1"
[dev-dependencies.anyhow]
version = "1"
[dev-dependencies.tokio-test]
version = "0.4"
[dev-dependencies.tracing-subscriber]
version = "0.3"
[dev-dependencies.wiremock]
version = "0.6"
[[example]]
name = "basic"
path = "examples/basic.rs"
required-features = ["http", "sse"]
[[example]]
name = "cli_runner"
path = "examples/cli_runner.rs"
required-features = ["cli"]
[[example]]
name = "full_workflow"
path = "examples/full_workflow.rs"
required-features = ["http", "sse"]
[[example]]
name = "managed_server"
path = "examples/managed_server.rs"
required-features = ["http", "sse", "server"]
[[example]]
name = "streaming"
path = "examples/streaming.rs"
required-features = ["http", "sse"]
[features]
cli = ["tokio/process"]
default = ["http", "sse"]
full = ["http", "sse", "server", "cli"]
http = ["dep:reqwest", "dep:serde_json"]
server = ["tokio/process", "dep:portpicker"]
sse = ["dep:reqwest-eventsource", "dep:backoff"]
[lib]
name = "opencode_rs"
path = "src/lib.rs"
[package]
authors = ["Allison Durham"]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
categories = ["api-bindings", "asynchronous", "development-tools"]
description = "Rust SDK for OpenCode (HTTP-first hybrid with SSE streaming)"
documentation = "https://docs.rs/opencode_rs"
edition = "2024"
homepage = "https://github.com/allisoneer/agentic_auxilary"
keywords = ["opencode", "sdk", "http", "sse", "streaming"]
license = "Apache-2.0"
name = "opencode_rs"
readme = false
repository = "https://github.com/allisoneer/agentic_auxilary"
resolver = "2"
version = "0.1.0"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "mock_server"
path = "tests/mock_server.rs"