[package]
name = "github-copilot-sdk"
version = "0.1.0"
edition = "2024"
rust-version = "1.94.0"
description = "Rust SDK for programmatic control of the GitHub Copilot CLI via JSON-RPC. Technical preview, pre-1.0."
keywords = ["copilot", "github", "ai", "json-rpc", "sdk"]
categories = ["api-bindings", "development-tools"]
repository = "https://github.com/github/copilot-sdk"
homepage = "https://github.com/github/copilot-sdk"
documentation = "https://docs.rs/github-copilot-sdk"
readme = "README.md"
license = "MIT"
exclude = [
"RELEASING.md",
"release-plz.toml",
"rust-toolchain.toml",
".rustfmt.toml",
".rustfmt.nightly.toml",
"clippy.toml",
".gitignore",
]
[lib]
name = "github_copilot_sdk"
[features]
default = []
embedded-cli = ["dep:sha2", "dep:zstd"]
derive = ["dep:schemars"]
test-support = []
[package.metadata.docs.rs]
all-features = true
rustdoc-args = ["--cfg", "docsrs"]
[dependencies]
async-trait = "0.1"
schemars = { version = "1", optional = true }
serde = { version = "1", features = ["derive"] }
serde_json = "1"
thiserror = "2"
tokio = { version = "1", features = ["io-util", "sync", "rt", "process", "net", "time", "macros"] }
tokio-stream = { version = "0.1", features = ["sync"] }
tokio-util = { version = "0.7", default-features = false }
tracing = "0.1"
dirs = "5"
parking_lot = "0.12"
regex = "1"
sha2 = { version = "0.10", optional = true }
getrandom = "0.2"
zstd = { version = "0.13", optional = true }
[dev-dependencies]
schemars = "1"
serial_test = "3"
tempfile = "3"
sha2 = "0.10"
tokio = { version = "1", features = ["rt-multi-thread"] }
zstd = "0.13"
[build-dependencies]
flate2 = "1"
sha2 = "0.10"
tar = "0.4"
ureq = { version = "2", default-features = false, features = ["tls"] }
zip = { version = "2", default-features = false, features = ["deflate"] }
zstd = "0.13"