Dependencies
Rust Crates (30+ direct)
Core Framework
| Crate |
Version |
Purpose |
ratatui |
0.30.2 |
TUI framework |
crossterm |
0.29 |
Terminal manipulation |
tokio |
1 |
Async runtime (multi-thread, macros, sync, time, net, io-util, signal) |
HTTP & Networking
| Crate |
Version |
Purpose |
reqwest |
0.13 |
HTTP client (JSON, streaming, native-tls-vendored, form) |
rmcp |
2.2 |
MCP client (child-process, streamable HTTP) |
webbrowser |
1 |
Open URLs in browser |
url |
2 |
URL parsing |
percent-encoding |
2 |
URL encoding |
HTML/Markdown
| Crate |
Version |
Purpose |
dom_smoothie |
0.18.0 |
HTML DOM manipulation |
fast_html2md |
0.0.62 |
HTML-to-Markdown conversion |
scraper |
0.27.0 |
HTML parsing/selecting |
pulldown-cmark |
0.13 |
Markdown parsing (no default features) |
Serialization
| Crate |
Version |
Purpose |
serde |
1 |
Serialization framework |
serde_json |
1 |
JSON serialization |
serde_yaml_ng |
0.10 |
YAML serialization |
Storage & Files
| Crate |
Version |
Purpose |
rusqlite |
0.40 |
SQLite (bundled) |
ignore |
0.4 |
.gitignore-aware file walking |
globset |
0.4 |
Glob pattern matching |
include_dir |
0.7 |
Embed directory contents in binary |
infer |
0.19 |
File type detection |
dirs |
6 |
Standard OS directories |
Text & Search
| Crate |
Version |
Purpose |
regex |
1 |
Regular expressions |
nucleo-matcher |
0.3 |
Fuzzy matching (for @mention autocomplete) |
similar |
3 |
Diff computation |
syntect |
5 |
Syntax highlighting |
tiktoken-rs |
0.12 |
OpenAI token counting |
Cryptography & Encoding
| Crate |
Version |
Purpose |
base64 |
0.22 |
Base64 encoding |
sha2 |
0.11 |
SHA-256 hashing |
hex |
0.4 |
Hex encoding |
uuid |
1 |
UUID generation (v4, v5) |
libc |
0.2 |
Raw C FFI bindings |
Error Handling & Logging
| Crate |
Version |
Purpose |
anyhow |
1 |
Error handling |
tracing |
0.1 |
Structured logging |
tracing-subscriber |
0.3 |
Log subscriber with env-filter |
chrono |
0.4 |
Date/time with serde |
Other
| Crate |
Version |
Purpose |
lsp-types |
0.97 |
LSP protocol types |
futures-util |
0.3 |
Async stream combinators |
External Services
| Service |
Purpose |
| Anthropic API |
Primary LLM provider |
| OpenAI API |
Alternative LLM provider (including OAuth) |
| GitHub |
Release artifacts via semantic-release CI |
| MCP Servers |
External tool servers (stdio or HTTP) |
| LSP Servers |
Language servers (rust-analyzer, TypeScript, Pyright, gopls, etc.) |
Build Configuration
Compiler Lints (.cargo/config.toml)
All unused code, dead code, and deprecation warnings promoted to errors:
-W unused, -W dead_code, -W unreachable_code, -D warnings
Release Profile
opt-level=3, LTO="fat", codegen-units=1, panic="abort", strip="symbols", overflow-checks=true
CI/CD
- CI: cargo build + test + clippy on every push
- Release: semantic-release with changelog generation, Cargo.toml version bump, GitHub artifact upload