[package]
name = "aico-cli"
authors = ["Jurriaan Pruis <email@jurriaanpruis.nl>"]
description = "Scriptable control over LLMs from the terminal"
readme = "README.md"
homepage = "https://github.com/jurriaan/aico"
repository = "https://github.com/jurriaan/aico"
version = "0.1.3"
edition = "2024"
license = "MIT"
categories = ["command-line-utilities", "text-processing"]
rust-version = "1.93"
default-run = "aico"
exclude = [
"mise.toml",
"mise.lock",
".github",
]
build = "build.rs"
[lib]
name = "aico"
path = "src/lib.rs"
[[bin]]
name = "aico"
path = "src/main.rs"
[dependencies]
chrono = { version = "0.4.42", default-features = false, features = ["serde", "now", "std"] }
clap = { version = "4.5.53", features = ["derive"] }
clap_complete = { version = "4.5.64", features = ["unstable-dynamic"] }
comfy-table = "7.2.1"
crossterm = { version = "0.29.0" }
futures-util = "0.3.31"
regex = "1.12.2"
reqwest = { version = "0.13.1", default-features = false, features = ["json", "rustls-no-provider", "stream"] }
serde = { version = "1.0.228", features = ["derive"] }
serde_json = "1.0.148"
shlex = "1.3.0"
similar = "2.7.0"
syntect = { version = "5.3.0", default-features = false, features = ["default-syntaxes", "default-themes", "regex-fancy"] }
tempfile = "3.24.0"
thiserror = "2.0.17"
tokio = { version = "1.49.0", features = ["macros", "rt"] }
tokio-util = { version = "0.7.17", features = ["io"] }
unicode-width = "0.2.2"
unicodeit = "0.2.0"
[target.'cfg(all(target_env = "musl", target_arch = "x86_64"))'.dependencies.tikv-jemallocator]
version = "0.6.0"
[target.'cfg(all(target_arch = "riscv64"))'.dependencies.rustls]
version = "0.23.36"
default-features = false
features = ["ring", "std", "tls12"]
[target.'cfg(not(all(target_arch = "riscv64")))'.dependencies.rustls]
version = "0.23.36"
default-features = true
[dev-dependencies]
assert_cmd = "2.1.1"
assert_fs = "1.1.3"
mockito = "1.7.1"
predicates = "3.1.3"
tempfile = "3.24.0"
[build-dependencies]
anyhow = "1.0.100"
vergen-gitcl = { version = "9.1.0", features = ["build", "cargo", "rustc"] }
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
strip = true
panic = "abort"
[lints.rust]
warnings = "deny"
[workspace]
members = [
"tests/support/mock_server"
]