56 lines
2.2 KiB
TOML
56 lines
2.2 KiB
TOML
[package]
|
|
license = "Apache-2.0"
|
|
name = "xai-grok-shared"
|
|
edition.workspace = true
|
|
|
|
[dependencies]
|
|
agent-client-protocol = { workspace = true }
|
|
anyhow = { workspace = true }
|
|
base64 = { workspace = true }
|
|
dirs = "6"
|
|
dunce = { workspace = true }
|
|
image = { workspace = true, features = ["png", "jpeg", "gif", "webp"] }
|
|
parking_lot = { workspace = true }
|
|
prod-mc-cli-chat-proxy-types = { path = "../../../prod/mc/cli-chat-proxy-types" }
|
|
regex = { workspace = true }
|
|
serde = { workspace = true }
|
|
serde_json = { workspace = true, features = ["preserve_order"] }
|
|
tempfile = { workspace = true }
|
|
thiserror = { workspace = true }
|
|
tracing = { workspace = true }
|
|
urlencoding = { workspace = true }
|
|
xai-grok-config-types = { workspace = true }
|
|
xai-grok-models = { workspace = true }
|
|
xai-grok-tools = { workspace = true }
|
|
xai-tty-utils = { workspace = true }
|
|
|
|
[dev-dependencies]
|
|
uuid = { workspace = true, features = ["v4"] }
|
|
|
|
[target.'cfg(unix)'.dependencies]
|
|
libc = { workspace = true }
|
|
|
|
# objc2 runtime messaging (links libobjc only, NOT AppKit) for the fast
|
|
# NSPasteboard probes and the paste-time native image read in clipboard.rs.
|
|
# AppKit itself is dlopen'd lazily at first probe so headless processes never
|
|
# load it — preserving the no-AppKit-link rule in clipboard.rs. Version
|
|
# matches the workspace lock.
|
|
[target.'cfg(target_os = "macos")'.dependencies]
|
|
objc2 = "0.6.3"
|
|
|
|
# arboard for clipboard on non-macOS platforms. On macOS we use pbcopy/pbpaste
|
|
# subprocesses to avoid linking AppKit, which causes ~2 GB IOAccelerator GPU
|
|
# memory overhead in headless processes (see clipboard.rs).
|
|
# `wayland-data-control` makes arboard set the Wayland selection through the
|
|
# compositor-side data-control protocol (no surface, no focus) instead of the
|
|
# focus-mediated XWayland bridge; no-op off Linux (target-gated inside arboard).
|
|
[target.'cfg(not(target_os = "macos"))'.dependencies]
|
|
arboard = { workspace = true, features = ["wayland-data-control"] }
|
|
|
|
# Already in-graph via arboard's wayland-data-control; direct dep for the
|
|
# data-control probe in clipboard.rs (`is_primary_selection_supported`).
|
|
[target.'cfg(target_os = "linux")'.dependencies]
|
|
wl-clipboard-rs = { workspace = true }
|
|
|
|
[lints]
|
|
workspace = true
|