tokf 0.2.21

Config-driven CLI tool that compresses command output before it reaches an LLM context
Documentation
[package]
name = "tokf"
version = "0.2.21"
edition.workspace = true
license.workspace = true
repository.workspace = true
homepage.workspace = true
description = "Config-driven CLI tool that compresses command output before it reaches an LLM context"
keywords = ["llm", "cli", "tokens", "ai", "context-window"]
categories = ["command-line-utilities", "development-tools"]

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

[dependencies]
tokf-common = { path = "../tokf-common", version = "0.2.21", features = ["validation"] }
tokf-filter = { path = "../tokf-filter", version = "0.2.21" }
clap = { version = "4", features = ["derive", "env"] }
toml = "1.0"
serde = { version = "1", features = ["derive"] }
regex = "1"
anyhow = "1"
dirs = "6"
serde_json = "1"
include_dir = { version = "0.7", features = ["glob"] }
# Pinned to 0.32.x: uses libsqlite3-sys ^0.30.1, same as sqlx-sqlite in tokf-server.
# Upgrading rusqlite past 0.32.x would require a newer libsqlite3-sys that conflicts
# with sqlx-sqlite's links = "sqlite3" constraint in the workspace resolver.
rusqlite = { version = "0.32", features = ["bundled"] }
rkyv = { version = "0.8", features = ["bytecheck", "unaligned"] }
reqwest = { version = "0.12", default-features = false, features = ["rustls-tls", "json", "blocking", "multipart"] }
# linux-native uses kernel keyutils (no libdbus-sys dependency).
# sync-secret-service would need libdbus-1-dev on Linux CI/build hosts.
keyring = { version = "3", features = ["apple-native", "windows-native", "linux-native"] }
open = "5"
uuid = { version = "1", features = ["v4"] }
gethostname = "1"
clap_complete = "4.5"
clap_complete_nushell = "4.5"

[features]
stdlib-publish = []
test-keyring = []

[dev-dependencies]
tokf-dev = { path = ".", package = "tokf", features = ["test-keyring"] }
tempfile = "3"
serial_test = "3"
mockito = "1.7.2"
filetime = "0.2"

[lints]
workspace = true