[package]
name = "tidev"
version = "0.2.0"
edition = "2024"

authors = ["Eslzzyl"]
license = "Apache-2.0"
description = "A terminal-based AI coding agent"

repository = "https://github.com/Eslzzyl/tidev"
readme = "README.md"
homepage = "https://github.com/Eslzzyl/tidev"

keywords = ["ai", "coding", "agent", "tui"]
categories = ["development-tools", "command-line-utilities"]

include = ["/src", "README.md", "LICENSE", "presets.toml"]

[dependencies]
anyhow = "1.0.102"
arboard = "3.6.1"
base64 = "0.22.1"
chrono = { version = "0.4.44", features = ["serde"] }
crossterm = "0.29.0"
dirs = "6.0.0"
futures-util = "0.3.32"
globset = "0.4.18"
grep = "0.4.1"
ignore = "0.4.25"
notify = "8.2.0"
html2md = { package = "fast_html2md", version = "0.0.62", default-features = false, features = [
    "rewriter",
    "ignore_cookies",
] }
pulldown-cmark = "0.13.3"
ratatui = "0.30.0"
reqwest = { version = "0.13.3", default-features = false, features = [
    "blocking",
    "json",
    "stream",
    "rustls",
] }
image = { version = "0.25.10", default-features = false, features = ["png"] }
rusqlite = { version = "0.39.0", features = ["bundled"] }
serde = { version = "1.0.228", features = ["derive", "rc"] }
serde_json = "1.0.149"
serde_yaml = "0.9.34"
async-trait = "0.1"
syntect = "5.3.0"
two-face = { version = "0.5.1", default-features = false, features = [
    "syntect-default-onig",
] }
textwrap = "0.16.2"
tokio = { version = "=1.52.1", features = [
    "rt-multi-thread",
    "macros",
    "sync",
    "time",
    "fs",
    "process",
    "io-std",
] }
toml = "1.1.2"
shlex = "1.3.0"
unicode-width = "0.2"
url = "2.5.8"
urlencoding = "2.1.3"
uuid = { version = "1.23.1", features = ["v4", "serde"] }
rmcp = { version = "1.5.0", features = [
    "client",
    "transport-child-process",
    "transport-streamable-http-client-reqwest",
] }
diffy = "0.5.0"
blake3 = "1.8.5"
lru = "0.18.0"
rayon = "1.12.0"
mime_guess = "2.0.5"
strsim = "0.11.1"
clap = { version = "4.6.1", features = ["derive"] }
tokio-tungstenite = { version = "0.29.0", features = [
    "rustls-tls-native-roots",
] }
fancy-regex = "0.18.0"

[profile.dev]
incremental = true # Compile your binary in smaller steps.

[profile.release]
codegen-units = 1 # Allows LLVM to perform better optimization.
lto = true        # Enables link-time-optimizations.
opt-level = "s"   # Prioritizes small binary size. Use `3` if you prefer speed.
strip = true      # Ensures debug symbols are removed.
