[package]
edition = "2024"
name = "tokf"
version = "0.2.40"
build = false
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "Config-driven CLI tool that compresses command output before it reaches an LLM context"
homepage = "https://tokf.net"
readme = false
keywords = [
"llm",
"cli",
"tokens",
"ai",
"context-window",
]
categories = [
"command-line-utilities",
"development-tools",
]
license = "MIT"
repository = "https://github.com/mpecan/tokf"
resolver = "2"
[features]
default = []
otel = ["otel-http"]
otel-grpc = [
"dep:opentelemetry",
"dep:opentelemetry_sdk",
"dep:opentelemetry-otlp",
"opentelemetry-otlp/grpc-tonic",
"opentelemetry-otlp/metrics",
"opentelemetry_sdk/metrics",
"opentelemetry_sdk/experimental_metrics_custom_reader",
"dep:tokio",
"dep:tonic",
]
otel-http = [
"dep:opentelemetry",
"dep:opentelemetry_sdk",
"dep:opentelemetry-otlp",
"opentelemetry-otlp/http-proto",
"opentelemetry-otlp/reqwest-blocking-client",
"opentelemetry-otlp/metrics",
"opentelemetry_sdk/metrics",
"opentelemetry_sdk/experimental_metrics_custom_reader",
]
stdlib-publish = []
test-keyring = []
[lib]
name = "tokf"
path = "src/lib.rs"
[[bin]]
name = "tokf"
path = "src/main.rs"
[[test]]
name = "auth_client"
path = "tests/auth_client.rs"
[[test]]
name = "auth_credentials"
path = "tests/auth_credentials.rs"
[[test]]
name = "cli_auth"
path = "tests/cli_auth.rs"
[[test]]
name = "cli_baseline"
path = "tests/cli_baseline.rs"
[[test]]
name = "cli_cache"
path = "tests/cli_cache.rs"
[[test]]
name = "cli_check"
path = "tests/cli_check.rs"
[[test]]
name = "cli_completions"
path = "tests/cli_completions.rs"
[[test]]
name = "cli_config"
path = "tests/cli_config.rs"
[[test]]
name = "cli_doctor"
path = "tests/cli_doctor.rs"
[[test]]
name = "cli_generic"
path = "tests/cli_generic.rs"
[[test]]
name = "cli_history"
path = "tests/cli_history.rs"
[[test]]
name = "cli_hook_handle"
path = "tests/cli_hook_handle.rs"
[[test]]
name = "cli_hook_install"
path = "tests/cli_hook_install.rs"
[[test]]
name = "cli_info"
path = "tests/cli_info.rs"
[[test]]
name = "cli_ls"
path = "tests/cli_ls.rs"
[[test]]
name = "cli_publish"
path = "tests/cli_publish.rs"
[[test]]
name = "cli_remote"
path = "tests/cli_remote.rs"
[[test]]
name = "cli_rewrite"
path = "tests/cli_rewrite.rs"
[[test]]
name = "cli_run"
path = "tests/cli_run.rs"
[[test]]
name = "cli_search"
path = "tests/cli_search.rs"
[[test]]
name = "cli_shell"
path = "tests/cli_shell.rs"
[[test]]
name = "cli_show"
path = "tests/cli_show.rs"
[[test]]
name = "cli_telemetry"
path = "tests/cli_telemetry.rs"
[[test]]
name = "cli_tracking"
path = "tests/cli_tracking.rs"
[[test]]
name = "cli_verify_scope"
path = "tests/cli_verify_scope.rs"
[[test]]
name = "config_resolution"
path = "tests/config_resolution.rs"
[[test]]
name = "engine_gaps"
path = "tests/engine_gaps.rs"
[[test]]
name = "filter_lua"
path = "tests/filter_lua.rs"
[[test]]
name = "remote_client"
path = "tests/remote_client.rs"
[[test]]
name = "remote_machine"
path = "tests/remote_machine.rs"
[[test]]
name = "verify_cmd"
path = "tests/verify_cmd.rs"
[dependencies.anyhow]
version = "1"
[dependencies.clap]
version = "4"
features = [
"derive",
"env",
]
[dependencies.clap_complete]
version = "4.5"
[dependencies.clap_complete_nushell]
version = "4.5"
[dependencies.dialoguer]
version = "0.12"
default-features = false
[dependencies.dirs]
version = "6"
[dependencies.gethostname]
version = "1"
[dependencies.include_dir]
version = "0.7"
features = ["glob"]
[dependencies.keyring]
version = "3"
features = [
"apple-native",
"windows-native",
"linux-native",
]
[dependencies.open]
version = "5"
[dependencies.opentelemetry]
version = "0.31"
features = ["metrics"]
optional = true
[dependencies.opentelemetry-otlp]
version = "0.31"
optional = true
[dependencies.opentelemetry_sdk]
version = "0.31"
features = ["metrics"]
optional = true
[dependencies.rable]
version = "0.1.8"
[dependencies.regex]
version = "1"
[dependencies.reqwest]
version = "0.13"
features = [
"rustls",
"json",
"blocking",
"multipart",
"query",
]
default-features = false
[dependencies.rkyv]
version = "0.8"
features = [
"bytecheck",
"unaligned",
]
[dependencies.rusqlite]
version = "0.32"
features = ["bundled"]
[dependencies.serde]
version = "1"
features = ["derive"]
[dependencies.serde_json]
version = "1"
[dependencies.tokf-common]
version = "0.2.40"
features = ["validation"]
[dependencies.tokf-filter]
version = "0.2.40"
[dependencies.tokf-hook-types]
version = "0.2.40"
[dependencies.tokio]
version = "1"
features = ["rt-multi-thread"]
optional = true
[dependencies.toml]
version = "1.0"
[dependencies.tonic]
version = "0.14"
optional = true
default-features = false
[dependencies.uuid]
version = "1"
features = ["v4"]
[dependencies.which]
version = "8"
[dev-dependencies.filetime]
version = "0.2"
[dev-dependencies.mockito]
version = "1.7.2"
[dev-dependencies.serial_test]
version = "3"
[dev-dependencies.tempfile]
version = "3"
[lints.clippy]
expect_used = "deny"
module_name_repetitions = "allow"
must_use_candidate = "allow"
panic = "deny"
todo = "deny"
unwrap_used = "deny"
[lints.clippy.nursery]
level = "warn"
priority = -1
[lints.clippy.pedantic]
level = "warn"
priority = -1