Skip to main content

max / makenotwork

2.4 KB · 69 lines History Blame Raw
1 [package]
2 name = "kberg"
3 version = "0.1.0"
4 edition = "2024"
5 description = "MCP bridge for connecting local LLMs to desktop apps. Provider-agnostic agent loop over a Streamable HTTP MCP server."
6 license = "MIT"
7 readme = "README.md"
8 keywords = ["mcp", "llm", "ollama", "tools", "agent"]
9 categories = ["api-bindings", "development-tools"]
10
11 [features]
12 default = ["server", "ollama"]
13 server = ["dep:axum", "dep:tokio", "dep:tokio-stream", "dep:tower", "dep:tower-http"]
14 ollama = ["dep:reqwest", "dep:tokio"]
15
16 [dependencies]
17 serde = { version = "1", features = ["derive"] }
18 serde_json = "1"
19 thiserror = "2"
20 tracing = "0.1"
21 async-trait = "0.1"
22 uuid = { version = "1", features = ["v4", "serde"] }
23
24 axum = { version = "0.8", optional = true }
25 tower = { version = "0.5", optional = true }
26 tower-http = { version = "0.7", optional = true, features = ["trace"] }
27
28 reqwest = { version = "0.13", optional = true, features = ["json"] }
29
30 tokio = { version = "1", optional = true, features = ["rt-multi-thread", "macros", "net", "sync", "time", "io-std", "io-util"] }
31 tokio-stream = { version = "0.1", optional = true, features = ["sync"] }
32
33 [dev-dependencies]
34 tokio = { version = "1", features = ["rt-multi-thread", "macros", "net", "sync", "time"] }
35 tracing-subscriber = { version = "0.3", features = ["env-filter"] }
36 reqwest = { version = "0.13", features = ["json"] }
37
38 [lints.rust]
39 unused = "warn"
40 unreachable_pub = "warn"
41
42 [lints.clippy]
43 pedantic = { level = "warn", priority = -1 }
44 # Allow-list tuned from a measured breakdown across server/multithreaded/pter
45 # (2026-07-22). These are the high-churn / low-signal pedantic lints; everything
46 # else in `pedantic` stays a warning. Keep this block identical across repos.
47 module_name_repetitions = "allow"
48 # Doc lints. No docs-completeness push is underway.
49 missing_errors_doc = "allow"
50 missing_panics_doc = "allow"
51 doc_markdown = "allow"
52 # Numeric casts. Endemic and mostly intentional in size and byte math.
53 cast_possible_truncation = "allow"
54 cast_sign_loss = "allow"
55 cast_precision_loss = "allow"
56 cast_possible_wrap = "allow"
57 cast_lossless = "allow"
58 # Subjective structure and style nags. High churn, low signal.
59 must_use_candidate = "allow"
60 too_many_lines = "allow"
61 struct_excessive_bools = "allow"
62 similar_names = "allow"
63 items_after_statements = "allow"
64 single_match_else = "allow"
65 # Frequent false-positives in TUI and router-heavy code.
66 match_same_arms = "allow"
67 unnecessary_wraps = "allow"
68 type_complexity = "allow"
69