[go: up one dir, main page]

vtcode-core 0.21.6

Core library for VTCode - a Rust-based terminal coding agent
Documentation
[package]
name = "vtcode-core"
version = "0.21.6"
edition = "2024"
authors = ["vinhnx <vinhnx@users.noreply.github.com>"]
description = "Core library for VTCode - a Rust-based terminal coding agent"
license = "MIT"
readme = "../README.md"
homepage = "https://github.com/vinhnx/vtcode"
repository = "https://github.com/vinhnx/vtcode"
documentation = "https://docs.rs/vtcode-core"
keywords = ["ai", "coding", "agent", "llm", "rust"]
categories = ["development-tools", "api-bindings"]

[dependencies]
anyhow = "1.0"
clap = { version = "4.5", features = ["derive"] }
reqwest = { version = "0.12", features = ["json", "rustls-tls", "stream"] }
serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0"
toml = "0.9.7"
tokio = { version = "1.37", features = [
    "fs",
    "io-util",
    "macros",
    "rt-multi-thread",
    "sync",
    "process",
] }
futures = "0.3"
async-stream = "0.3"
walkdir = "2.5"
glob = "0.3"
thiserror = "1.0"
console = "0.16.1"
dialoguer = "0.11"
colored = "2.1"
regex = "1.10"
shell-words = "1.1"
tree-sitter = "0.25"
tree-sitter-rust = "0.23"
tree-sitter-python = "0.23"
tree-sitter-javascript = "0.23"
tree-sitter-typescript = "0.23"
tree-sitter-go = "0.23"
tree-sitter-java = "0.23"
flate2 = "1.0"
indexmap = { version = "2.2", features = ["serde"] }
itertools = "0.14.0"
tempfile = "3.0"
dashmap = "5.5" # For concurrent hash maps
once_cell = "1.19"
parking_lot = "0.12"
sha2 = "0.10"
chrono = { version = "0.4", features = [
    "serde",
] } # For timestamp handling in CLI
humantime = "2.1"
rand = "0.8"
terminal_size = "0.4.3"
is-terminal = "0.4.16"
async-trait = "0.1.89"
# Dotenv support
dotenvy = "0.15"
# Home directory detection
dirs = "5.0"
# YAML support
serde_yaml = "0.9"
tracing = "0.1"
# ANSI styling
anstyle = "1.0"
anstyle-query = "1.0"
anstream = "0.6"
anstyle-git = "1.0"
anstyle-ls = "1.0"
anstyle-syntect = "1.0"
colorchoice-clap = "1.0"
quick_cache = "0.6"
roff = "0.2"
syntect = "5.2"
unicode-segmentation = "1.11"
unicode-width = "0.2.0"
crossterm = "0.27"
ratatui = { version = "0.29", default-features = false, features = [
    "crossterm",
    "unstable-rendered-line-info",
    "unstable-widget-ref",
] }
tui-markdown = { version = "0.3.5", default-features = false, features = ["highlight-code"] }
tui-scrollview = "0.5.1"
tui-popup = "0.6"
tui-prompts = "0.5"
ignore = "0.4"
nucleo-matcher = "0.3"
line-clipping = "0.3"
pulldown-cmark = { version = "0.9", default-features = false, features = [
    "simd",
] }
catppuccin = { version = "2.5", default-features = false }
similar = "2.4"
rig = { package = "rig-core", version = "0.21", default-features = false, features = ["reqwest-rustls"] }
tui-term = { version = "0.2.0", features = ["unstable"] }
portable-pty = "0.9.0"

# MCP (Model Context Protocol) support
rmcp = { version = "0.7.0", features = ["client", "transport-child-process"] }

# Token counting for attention budget management
tiktoken-rs = "0.6"

[target.'cfg(unix)'.dependencies]

[[example]]
name = "anstyle_test"
path = "examples/anstyle_test.rs"

[[example]]
name = "dialoguer_example"
path = "examples/dialoguer_example.rs"

[[example]]
name = "migration_test"
path = "examples/migration_test.rs"

[features]
default = []
swift = ["tree-sitter-swift"]

[dependencies.tree-sitter-swift]
version = "0.7.1"
optional = true