aico-cli 0.1.4

Scriptable control over LLMs from the terminal
Documentation
[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.4"
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"

# aws-lc-rs is not cross-compilable for riscv64 at the moment, so we use ring there
[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"
]