okc 0.1.0

A local-first tool for AI agents to browse, parse, search, and reason over Open Knowledge Format (OKF) repositories
Documentation
# 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.95"
name = "okc"
version = "0.1.0"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A local-first tool for AI agents to browse, parse, search, and reason over Open Knowledge Format (OKF) repositories"
homepage = "https://github.com/guifelix/Open-Knowledge-Catalog"
readme = "README.md"
keywords = [
    "knowledge-management",
    "okf",
    "ai-agents",
    "markdown",
    "knowledge-base",
]
categories = [
    "command-line-utilities",
    "development-tools::cargo-plugins",
]
license = "MIT"
repository = "https://github.com/guifelix/Open-Knowledge-Catalog"

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

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

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

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

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

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

[[bench]]
name = "benchmarks"
path = "benches/benchmarks.rs"
harness = false

[dependencies.anyhow]
version = "1"

[dependencies.axum]
version = "0.8"

[dependencies.blake3]
version = "1"

[dependencies.camino]
version = "1"

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

[dependencies.dirs]
version = "6"

[dependencies.ignore]
version = "0.4"

[dependencies.memchr]
version = "2"

[dependencies.notify]
version = "6"
features = ["macos_fsevent"]

[dependencies.percent-encoding]
version = "2.3"

[dependencies.pulldown-cmark]
version = "0.13"
default-features = false

[dependencies.r2d2]
version = "0.8"

[dependencies.r2d2_sqlite]
version = "0.35"

[dependencies.rmcp]
version = "=3.1.1"
features = [
    "server",
    "client",
    "transport-child-process",
    "transport-io",
    "macros",
    "transport-streamable-http-server",
    "transport-streamable-http-server-session",
    "transport-streamable-http-client",
    "transport-streamable-http-client-reqwest",
    "transport-worker",
]

[dependencies.rusqlite]
version = "0.40"
features = ["bundled"]

[dependencies.saphyr]
version = "0.0.11"

[dependencies.schemars]
version = "1"
features = ["preserve_order"]

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

[dependencies.serde_json]
version = "1"

[dependencies.thiserror]
version = "2"

[dependencies.tokio]
version = "1"
features = [
    "macros",
    "rt-multi-thread",
    "signal",
    "process",
    "net",
]

[dependencies.tokio-util]
version = "0.7"

[dependencies.toml]
version = "1"

[dependencies.tracing]
version = "0.1"

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

[dev-dependencies.criterion]
version = "0.5"
features = ["html_reports"]

[dev-dependencies.libfuzzer-sys]
version = "0.4"

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

[dev-dependencies.reqwest]
version = "0.12"
features = [
    "json",
    "rustls-tls",
]
default-features = false

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

[dev-dependencies.tokio-util]
version = "0.7"

[lints.clippy]
expect_used = "warn"
filter_map_next = "warn"
large_enum_variant = "allow"
manual_flatten = "warn"
manual_map = "warn"
map_unwrap_or = "warn"
module_name_repetitions = "allow"
needless_borrow = "warn"
needless_pass_by_value = "warn"
panic = "warn"
redundant_closure = "warn"
todo = "warn"
type_complexity = "allow"
unused_async = "warn"
unwrap_used = "warn"

[lints.rust]
dead_code = "allow"
missing_docs = "allow"
unused_assignments = "warn"
unused_imports = "allow"
unused_mut = "warn"
unused_variables = "warn"