[package]
name = "okq"
version = "0.3.0"
edition = "2024"
rust-version = "1.85"
description = "A fast, deterministic CLI for searching and navigating Open Knowledge Format (OKF) document bundles — for humans and AI agents."
authors = ["Mike Valstar <mike@valstar.dev>"]
license = "Apache-2.0"
repository = "https://github.com/mikevalstar/okq"
homepage = "https://github.com/mikevalstar/okq"
readme = "README.md"
keywords = ["okf", "knowledge", "search", "markdown", "cli"]
categories = ["command-line-utilities", "text-processing"]
# Ship a lean crate: source + design docs, but not the test corpus, suites,
# CI config, or internal working notes.
exclude = ["/docs/tests", "/tests", "/CLAUDE.md", "/.github"]

# cargo-binstall (and `mise use cargo:okq`) fetch prebuilt binaries from the
# GitHub Release instead of compiling. Names match the release workflow.
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ target }{ archive-suffix }"
bin-dir = "{ bin }{ binary-ext }"
pkg-fmt = "tgz"

[package.metadata.binstall.overrides.x86_64-pc-windows-msvc]
pkg-fmt = "zip"

[lib]
name = "okq"
path = "src/lib.rs"

[[bin]]
name = "okq"
path = "src/main.rs"

[dependencies]
anstream = "1.0.0"
anstyle = "1.0.14"
clap = { version = "4.6.1", features = ["derive"] }
dirs = "6.0.0"
ignore = "0.4.26"
okf = "0.1.0-alpha.1"
pulldown-cmark = "0.13.4"
regex = "1.12.4"
schemars = "1.2.1"
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.150"
tantivy = "0.25.0"
# Only used by `okq skills install --from-repo` (the sole network path, ADR-0007).
# rustls/webpki-roots TLS — no system OpenSSL, so the release matrix stays clean.
ureq = "2.12.1"

[dev-dependencies]
assert_cmd = "2.2.2"
insta = { version = "1.48.0", features = ["json"] }
predicates = "3.1.4"
tempfile = "3.27.0"
