[package]
edition = "2024"
name = "terraphim_grep"
version = "1.21.1"
authors = ["Terraphim AI Team <team@terraphim.ai>"]
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Intelligent hybrid grep with RLM fallback and KG curation"
homepage = "https://terraphim.ai"
documentation = "https://terraphim.ai"
readme = "README.md"
keywords = [
"grep",
"search",
"knowledge-graph",
"rlm",
]
categories = ["development-tools"]
license = "MIT"
repository = "https://github.com/terraphim/terraphim-ai"
resolver = "2"
[package.metadata.deb]
maintainer = "Terraphim Contributors <team@terraphim.ai>"
copyright = "2026, Terraphim Contributors"
license-file = [
"../../LICENSE-MIT",
"4",
]
extended-description = """
Terraphim Grep -- intelligent hybrid grep with knowledge-graph boosting and
LLM fallback. Runs fff-search code retrieval and a knowledge-graph concept
lookup in parallel, applies KG-aware boosting so chunks matching your thesaurus
rank above generic matches, and falls back to an LLM only when local sufficiency
is below threshold. Configured via role JSON; works in search-only mode without
any API key."""
depends = "$auto"
section = "utility"
priority = "optional"
assets = [
[
"target/release/terraphim-grep",
"usr/bin/",
"755",
],
[
"../../README.md",
"usr/share/doc/terraphim-grep/README",
"644",
],
[
"RELEASE_NOTES_v1.20.0.md",
"usr/share/doc/terraphim-grep/RELEASE_NOTES.md",
"644",
],
]
[features]
code-search = ["dep:fff-search"]
default = [
"llm",
"code-search",
]
llm = [
"dep:terraphim_service",
"dep:reqwest",
]
openrouter = [
"llm",
"terraphim_service/openrouter",
]
[lib]
name = "terraphim_grep"
path = "src/lib.rs"
[[bin]]
name = "terraphim-grep"
path = "src/main.rs"
[[test]]
name = "e2e_smoke_openrouter"
path = "tests/e2e_smoke_openrouter.rs"
[[test]]
name = "kg_curation_integration"
path = "tests/kg_curation_integration.rs"
[[test]]
name = "no_thesaurus_cli"
path = "tests/no_thesaurus_cli.rs"
[[test]]
name = "router_capability_routing"
path = "tests/router_capability_routing.rs"
[[bench]]
name = "hybrid_search"
path = "benches/hybrid_search.rs"
harness = false
required-features = ["code-search"]
[dependencies.anyhow]
version = "1.0"
[dependencies.async-trait]
version = "0.1"
[dependencies.clap]
version = "4"
features = ["derive"]
[dependencies.fff-search]
version = "0.8.4"
optional = true
[dependencies.log]
version = "0.4"
[dependencies.parking_lot]
version = "0.12"
[dependencies.reqwest]
version = "0.12"
features = [
"json",
"rustls-tls",
"json",
"rustls-tls",
]
optional = true
default-features = false
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serde_json]
version = "1.0"
[dependencies.terraphim_automata]
version = "1.19.2"
[dependencies.terraphim_config]
version = "1.15.0"
[dependencies.terraphim_rolegraph]
version = "1.15.0"
[dependencies.terraphim_service]
version = "1.20.5"
optional = true
[dependencies.terraphim_types]
version = "1.15.0"
[dependencies.terraphim_update]
version = "1.20.2"
[dependencies.thiserror]
version = "1.0"
[dependencies.tokio]
version = "1.0"
features = ["full"]
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
version = "0.3"
features = ["env-filter"]
[dev-dependencies.criterion]
version = "0.8"
features = ["async_tokio"]
[dev-dependencies.tempfile]
version = "3.27"
[dev-dependencies.terraphim_router]
version = "1.8.0"
[dev-dependencies.tokio-test]
version = "0.4"