[package]
edition = "2024"
name = "zeph"
version = "0.19.1"
authors = ["bug-ops"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Lightweight AI agent with hybrid inference, skills-first architecture, and multi-channel I/O"
homepage = "https://github.com/bug-ops/zeph"
documentation = "https://bug-ops.github.io/zeph/"
readme = "README.md"
keywords = [
"ai",
"agent",
"llm",
"inference",
"skills",
]
categories = [
"command-line-utilities",
"science",
]
license = "MIT"
repository = "https://github.com/bug-ops/zeph"
[features]
a2a = [
"dep:zeph-a2a",
"zeph-a2a?/server",
"zeph-a2a?/ibct",
]
acp = [
"dep:zeph-acp",
"zeph-acp/unstable-session-close",
"zeph-acp/unstable-session-fork",
"zeph-acp/unstable-session-resume",
"zeph-acp/unstable-elicitation",
"zeph-acp/unstable-logout",
]
acp-http = [
"acp",
"dep:axum",
"zeph-acp/acp-http",
]
bench = ["dep:zeph-bench"]
candle = [
"zeph-llm/candle",
"zeph-core/candle",
]
chat = [
"discord",
"slack",
]
classifiers = [
"candle",
"zeph-llm/classifiers",
"zeph-sanitizer/classifiers",
"zeph-core/classifiers",
]
cuda = [
"candle",
"zeph-llm/cuda",
"zeph-core/cuda",
]
default = [
"scheduler",
"sqlite",
]
desktop = ["tui"]
discord = ["zeph-channels/discord"]
full = [
"desktop",
"ide",
"server",
"chat",
"pdf",
"scheduler",
"classifiers",
"profiling",
"task-metrics",
]
gateway = ["dep:zeph-gateway"]
ide = [
"acp",
"acp-http",
]
metal = [
"candle",
"zeph-llm/metal",
"zeph-core/metal",
]
ml = [
"candle",
"pdf",
]
otel = [
"dep:opentelemetry",
"dep:opentelemetry_sdk",
"dep:opentelemetry-otlp",
"dep:tracing-opentelemetry",
]
pdf = ["zeph-memory/pdf"]
postgres = [
"zeph-db/postgres",
"zeph-memory/postgres",
]
profiling = [
"dep:tracing-chrome",
"dep:chrono",
"dep:uuid",
"dep:sysinfo",
"zeph-core/profiling",
"zeph-core/sysinfo",
"zeph-llm/profiling",
"zeph-memory/profiling",
"zeph-tools/profiling",
"zeph-skills/profiling",
"zeph-mcp/profiling",
"zeph-channels/profiling",
]
profiling-alloc = [
"profiling",
"zeph-core/profiling-alloc",
]
profiling-pyroscope = [
"profiling",
"otel",
"dep:pprof",
]
prometheus = [
"gateway",
"dep:prometheus-client",
"zeph-gateway/prometheus",
]
scheduler = [
"dep:zeph-scheduler",
"dep:blake3",
"dep:cron",
"dep:schemars",
"dep:chrono",
"zeph-core/scheduler",
]
server = [
"gateway",
"a2a",
"otel",
"prometheus",
]
slack = ["zeph-channels/slack"]
sqlite = [
"zeph-db/sqlite",
"zeph-memory/sqlite",
]
task-metrics = ["zeph-core/task-metrics"]
tui = ["dep:zeph-tui"]
[[bin]]
name = "zeph"
path = "src/main.rs"
[[test]]
name = "gateway_integration"
path = "tests/gateway_integration.rs"
[[test]]
name = "ingest_integration"
path = "tests/ingest_integration.rs"
[[test]]
name = "integration"
path = "tests/integration.rs"
[[test]]
name = "orchestration_integration"
path = "tests/orchestration_integration.rs"
[[test]]
name = "performance_agent_integration"
path = "tests/performance_agent_integration.rs"
[dependencies.anyhow]
version = "1.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.axum]
version = "0.8"
optional = true
[dependencies.blake3]
version = "1.8"
optional = true
[dependencies.chrono]
version = "0.4"
features = ["clock"]
optional = true
default-features = false
[dependencies.clap]
version = "4.6"
features = [
"derive",
"env",
]
[dependencies.cron]
version = "0.16"
optional = true
[dependencies.dialoguer]
version = "0.12"
[dependencies.dirs]
version = "6.0"
[dependencies.futures]
version = "0.3"
[dependencies.glob]
version = "0.3.3"
[dependencies.opentelemetry]
version = "0.31"
optional = true
[dependencies.opentelemetry-otlp]
version = "0.31"
features = [
"grpc-tonic",
"trace",
]
optional = true
default-features = false
[dependencies.opentelemetry_sdk]
version = "0.31"
features = ["trace"]
optional = true
default-features = false
[dependencies.parking_lot]
version = "0.12"
[dependencies.pprof]
version = "0.15.0"
features = ["prost-codec"]
optional = true
default-features = false
[dependencies.prometheus-client]
version = "0.24"
optional = true
[dependencies.reqwest]
version = "0.13"
default-features = false
[dependencies.rmcp]
version = "1.4"
[dependencies.schemars]
version = "1.2"
optional = true
[dependencies.serde]
version = "1.0"
[dependencies.serde_json]
version = "1.0"
[dependencies.similar]
version = "3.1"
[dependencies.sysinfo]
version = "0.38.4"
features = ["system"]
optional = true
default-features = false
[dependencies.tempfile]
version = "3.27"
[dependencies.tokio]
version = "1"
features = [
"macros",
"rt-multi-thread",
"signal",
"sync",
"time",
]
[dependencies.tokio-util]
version = "0.7"
[dependencies.toml]
version = "1.1"
[dependencies.toml_edit]
version = "0.25"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-appender]
version = "0.2"
[dependencies.tracing-chrome]
version = "0.7"
optional = true
[dependencies.tracing-opentelemetry]
version = "0.32"
optional = true
[dependencies.tracing-subscriber]
version = "0.3"
features = [
"parking_lot",
"env-filter",
]
default-features = false
[dependencies.url]
version = "2.5"
[dependencies.uuid]
version = "1.23"
features = ["v4"]
optional = true
[dependencies.zeph-a2a]
version = "0.19.1"
optional = true
[dependencies.zeph-acp]
version = "0.19.1"
optional = true
[dependencies.zeph-bench]
version = "0.19.1"
optional = true
[dependencies.zeph-channels]
version = "0.19.1"
[dependencies.zeph-common]
version = "0.19.1"
[dependencies.zeph-config]
version = "0.19.1"
[dependencies.zeph-core]
version = "0.19.1"
[dependencies.zeph-db]
version = "0.19.1"
default-features = false
[dependencies.zeph-experiments]
version = "0.19.1"
[dependencies.zeph-gateway]
version = "0.19.1"
optional = true
[dependencies.zeph-index]
version = "0.19.1"
[dependencies.zeph-llm]
version = "0.19.1"
[dependencies.zeph-mcp]
version = "0.19.1"
[dependencies.zeph-memory]
version = "0.19.1"
default-features = false
[dependencies.zeph-orchestration]
version = "0.19.1"
[dependencies.zeph-sanitizer]
version = "0.19.1"
[dependencies.zeph-scheduler]
version = "0.19.1"
optional = true
[dependencies.zeph-skills]
version = "0.19.1"
[dependencies.zeph-subagent]
version = "0.19.1"
[dependencies.zeph-tools]
version = "0.19.1"
[dependencies.zeph-tui]
version = "0.19.1"
optional = true
[dev-dependencies.serial_test]
version = "3.4"
[dev-dependencies.sqlx]
version = "0.8"
default-features = false
[dev-dependencies.tempfile]
version = "3.27"
[dev-dependencies.zeph-core]
version = "0.19.1"
[dev-dependencies.zeph-llm]
version = "0.19.1"
[dev-dependencies.zeph-memory]
version = "0.19.1"
default-features = false
[dev-dependencies.zeph-skills]
version = "0.19.1"
[lints.clippy]
all = "warn"
pedantic = "warn"
[lints.rust]
unsafe_code = "deny"
[profile.bench]
debug = 2
[profile.ci]
codegen-units = 16
debug = 0
incremental = false
inherits = "dev"
[profile.dev]
split-debuginfo = "unpacked"
[profile.dev.package."*"]
debug = 0
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
panic = "abort"
strip = true