forked from rtk-ai/rtk
-
Notifications
You must be signed in to change notification settings - Fork 2
Expand file tree
/
Copy pathCargo.toml
More file actions
89 lines (82 loc) · 2.93 KB
/
Copy pathCargo.toml
File metadata and controls
89 lines (82 loc) · 2.93 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
[package]
# contextcrawler-downstream: package renamed for ContextCrawler distribution.
# The source-level module/use/struct identifiers still use the upstream 'rtk'
# names — this only changes the cargo target binary name. Single binary, single
# mental model.
name = "contextcrawler"
version = "0.4.0"
edition = "2021"
# Minimum supported Rust: 1.80 for std::net::Ipv6Addr::to_ipv4_mapped()
# used in the SSRF block check, plus IpAddr::is_private stabilization.
# Older toolchains will fail to compile.
rust-version = "1.80"
authors = ["Patrick Szymkowiak"]
description = "ContextCrawler — downstream of rtk-ai/rtk: CLI proxy that compresses command output for LLM agents, with a session compactor and an opt-in Tirith defense-in-depth gate"
license = "MIT"
homepage = "https://github.com/thehoff/contextcrawler"
repository = "https://github.com/thehoff/contextcrawler"
readme = "README.md"
keywords = ["cli", "llm", "token", "filter", "productivity"]
categories = ["command-line-utilities", "development-tools"]
[dependencies]
clap = { version = "4", features = ["derive"] }
anyhow = "1.0"
ignore = "0.4"
walkdir = "2"
regex = "1"
lazy_static = "1.4"
serde = { version = "1", features = ["derive"] }
serde_json = { version = "1", features = ["preserve_order"] }
colored = "2"
dirs = "5"
rusqlite = { version = "0.31", features = ["bundled"] }
toml = "0.8"
chrono = "0.4"
tempfile = "3"
sha2 = "0.10"
ureq = "2"
getrandom = "0.4"
flate2 = "1.0"
quick-xml = "0.37"
which = "8"
automod = "1"
shlex = "1.3"
wait-timeout = "0.2"
url = "2"
# ===== contextcrawler-downstream dependencies begin =====
scraper = "0.20" # used by cmds/cloud/web_cmd.rs (HTML content extraction)
# ===== contextcrawler-downstream dependencies end =====
[target.'cfg(unix)'.dependencies]
libc = "0.2"
[build-dependencies]
toml = "0.8"
[dev-dependencies]
tiktoken-rs = "0.11.0"
[profile.release]
opt-level = 3
lto = true
codegen-units = 1
panic = "abort"
strip = true
# Note: dependency source paths (/Users/<builder>/.cargo/registry/...) and the
# workspace path get embedded in the release binary for panic backtraces. To
# strip them, build via `scripts/build-release.sh` which sets RUSTFLAGS with
# `--remap-path-prefix` for CARGO_HOME and the workspace root. `cargo` does not
# yet allow env-var substitution inside rustflags in `.cargo/config.toml`, and
# the cleaner `trim-paths` profile setting is still nightly-only.
# cargo-deb configuration
[package.metadata.deb]
maintainer = "Patrick Szymkowiak"
copyright = "2024 Patrick Szymkowiak"
license-file = ["LICENSE", "0"]
extended-description = "contextcrawler filters and compresses command outputs before they reach your LLM context, saving 60-90% of tokens."
section = "utility"
priority = "optional"
assets = [
["target/release/contextcrawler", "usr/bin/", "755"],
]
# cargo-generate-rpm configuration
[package.metadata.generate-rpm]
assets = [
{ source = "target/release/contextcrawler", dest = "/usr/bin/contextcrawler", mode = "755" },
]