# THIS FILE IS AUTOMATICALLY GENERATED BY CARGO
#
# When uploading crates to the registry Cargo will automatically
# "normalize" Cargo.toml files for maximal compatibility
# with all versions of Cargo and also rewrite `path` dependencies
# to registry (e.g., crates.io) dependencies.
#
# If you are reading this file be aware that the original Cargo.toml
# will likely look very different (and much more reasonable).
# See Cargo.toml.orig for the original contents.

[package]
edition = "2021"
rust-version = "1.88"
name = "cqs"
version = "0.9.4"
build = false
exclude = [
    ".claude/",
    ".mcp.json",
    ".githooks/",
    "CLAUDE.md",
    "PROJECT_CONTINUITY.md",
    "ROADMAP.md",
    "docs/AUDIT_*",
    "docs/DESIGN_SPEC_*",
    "docs/notes.toml",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Semantic code search and code intelligence for AI agents. Find functions by concept, trace call chains, assess impact — in single tool calls. Local ML, MCP server."
homepage = "https://github.com/jamie8johnson/cqs"
readme = "README.md"
keywords = [
    "code-search",
    "semantic-search",
    "mcp-server",
    "embeddings",
    "vector-search",
]
categories = [
    "command-line-utilities",
    "development-tools",
]
license = "MIT"
repository = "https://github.com/jamie8johnson/cqs"

[features]
default = [
    "lang-rust",
    "lang-python",
    "lang-typescript",
    "lang-javascript",
    "lang-go",
    "lang-c",
    "lang-java",
    "lang-sql",
]
encrypt = ["keyring"]
gpu-search = [
    "cuvs",
    "ndarray_015",
]
lang-all = [
    "lang-rust",
    "lang-python",
    "lang-typescript",
    "lang-javascript",
    "lang-go",
    "lang-c",
    "lang-java",
    "lang-sql",
]
lang-c = ["dep:tree-sitter-c"]
lang-go = ["dep:tree-sitter-go"]
lang-java = ["dep:tree-sitter-java"]
lang-javascript = ["dep:tree-sitter-javascript"]
lang-python = ["dep:tree-sitter-python"]
lang-rust = ["dep:tree-sitter-rust"]
lang-sql = ["dep:tree-sitter-sql"]
lang-typescript = ["dep:tree-sitter-typescript"]

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

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

[[example]]
name = "bench_embed"
path = "examples/bench_embed.rs"

[[test]]
name = "cli_test"
path = "tests/cli_test.rs"

[[test]]
name = "dead_code_test"
path = "tests/dead_code_test.rs"

[[test]]
name = "diff_test"
path = "tests/diff_test.rs"

[[test]]
name = "eval_test"
path = "tests/eval_test.rs"

[[test]]
name = "gather_test"
path = "tests/gather_test.rs"

[[test]]
name = "hnsw_test"
path = "tests/hnsw_test.rs"

[[test]]
name = "mcp_test"
path = "tests/mcp_test.rs"

[[test]]
name = "model_eval"
path = "tests/model_eval.rs"

[[test]]
name = "parser_test"
path = "tests/parser_test.rs"

[[test]]
name = "search_test"
path = "tests/search_test.rs"

[[test]]
name = "store_calls_test"
path = "tests/store_calls_test.rs"

[[test]]
name = "store_notes_test"
path = "tests/store_notes_test.rs"

[[test]]
name = "store_test"
path = "tests/store_test.rs"

[[test]]
name = "stress_test"
path = "tests/stress_test.rs"

[dependencies.anyhow]
version = "1"

[dependencies.axum]
version = "0.8"

[dependencies.blake3]
version = "1"

[dependencies.bytemuck]
version = "1"
features = ["derive"]

[dependencies.chrono]
version = "0.4"

[dependencies.clap]
version = "4"
features = [
    "derive",
    "env",
]

[dependencies.clap_complete]
version = "4"

[dependencies.colored]
version = "2"

[dependencies.crossbeam-channel]
version = "0.5"

[dependencies.ctrlc]
version = "3"

[dependencies.cuvs]
version = "25.12"
optional = true

[dependencies.dirs]
version = "6"

[dependencies.dunce]
version = "1"

[dependencies.fs4]
version = "0.12"

[dependencies.futures]
version = "0.3"

[dependencies.globset]
version = "0.4"

[dependencies.hf-hub]
version = "0.4"

[dependencies.hnsw_rs]
version = "0.3"

[dependencies.ignore]
version = "0.4"

[dependencies.indicatif]
version = "0.18"

[dependencies.keyring]
version = "3"
optional = true

[dependencies.lru]
version = "0.16"

[dependencies.ndarray]
version = "0.17"

[dependencies.ndarray_015]
version = "0.15"
optional = true
package = "ndarray"

[dependencies.notify]
version = "8"
features = ["serde"]

[dependencies.once_cell]
version = "1"

[dependencies.ort]
version = "2.0.0-rc.11"
features = [
    "cuda",
    "tensorrt",
]

[dependencies.rand]
version = "0.9"

[dependencies.rayon]
version = "1"

[dependencies.regex]
version = "1"

[dependencies.serde]
version = "1"
features = ["derive"]

[dependencies.serde_json]
version = "1"

[dependencies.simsimd]
version = "6"

[dependencies.sqlx]
version = "0.8"
features = [
    "runtime-tokio",
    "sqlite",
]
default-features = false

[dependencies.subtle]
version = "2"

[dependencies.thiserror]
version = "2"

[dependencies.tokenizers]
version = "0.22"
features = ["http"]

[dependencies.tokio]
version = "1"
features = [
    "rt-multi-thread",
    "fs",
    "sync",
    "time",
    "macros",
    "signal",
]

[dependencies.tokio-stream]
version = "0.1"

[dependencies.toml]
version = "0.9"

[dependencies.tower]
version = "0.5"

[dependencies.tower-http]
version = "0.6"
features = [
    "cors",
    "limit",
]

[dependencies.tracing]
version = "0.1"

[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]

[dependencies.tree-sitter]
version = "0.26"

[dependencies.tree-sitter-c]
version = "0.24"
optional = true

[dependencies.tree-sitter-go]
version = "0.25"
optional = true

[dependencies.tree-sitter-java]
version = "0.23"
optional = true

[dependencies.tree-sitter-javascript]
version = "0.25"
optional = true

[dependencies.tree-sitter-python]
version = "0.25"
optional = true

[dependencies.tree-sitter-rust]
version = "0.24"
optional = true

[dependencies.tree-sitter-sql]
version = "0.4"
optional = true
package = "tree-sitter-sequel-tsql"

[dependencies.tree-sitter-typescript]
version = "0.23"
optional = true

[dependencies.zeroize]
version = "1"

[dev-dependencies.assert_cmd]
version = "2"

[dev-dependencies.insta]
version = "1"

[dev-dependencies.predicates]
version = "3"

[dev-dependencies.proptest]
version = "1"

[dev-dependencies.serial_test]
version = "3"

[dev-dependencies.tempfile]
version = "3"

[target."cfg(unix)".dependencies.libc]
version = "0.2"

[profile.release]
lto = "thin"
codegen-units = 1
panic = "abort"
strip = true
