[package]
edition = "2024"
rust-version = "1.93"
name = "aico-cli"
version = "0.1.6"
authors = ["Jurriaan Pruis <email@jurriaanpruis.nl>"]
build = "build.rs"
exclude = [
"mise.toml",
"mise.lock",
".github",
]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
default-run = "aico"
description = "Scriptable control over LLMs from the terminal"
homepage = "https://github.com/jurriaan/aico"
readme = "README.md"
categories = [
"command-line-utilities",
"text-processing",
]
license = "MIT"
repository = "https://github.com/jurriaan/aico"
[lib]
name = "aico"
path = "src/lib.rs"
[[bin]]
name = "aico"
path = "src/main.rs"
[[test]]
name = "common"
path = "tests/common.rs"
[[test]]
name = "test_addons"
path = "tests/test_addons.rs"
[[test]]
name = "test_chronology"
path = "tests/test_chronology.rs"
[[test]]
name = "test_cli_prompt"
path = "tests/test_cli_prompt.rs"
[[test]]
name = "test_command_context"
path = "tests/test_command_context.rs"
[[test]]
name = "test_command_dump_history"
path = "tests/test_command_dump_history.rs"
[[test]]
name = "test_command_edit"
path = "tests/test_command_edit.rs"
[[test]]
name = "test_command_gen"
path = "tests/test_command_gen.rs"
[[test]]
name = "test_command_init"
path = "tests/test_command_init.rs"
[[test]]
name = "test_command_last"
path = "tests/test_command_last.rs"
[[test]]
name = "test_command_log"
path = "tests/test_command_log.rs"
[[test]]
name = "test_command_prompt_logic"
path = "tests/test_command_prompt_logic.rs"
[[test]]
name = "test_command_prompt_piping"
path = "tests/test_command_prompt_piping.rs"
[[test]]
name = "test_command_redo"
path = "tests/test_command_redo.rs"
[[test]]
name = "test_command_session"
path = "tests/test_command_session.rs"
[[test]]
name = "test_command_session_fork"
path = "tests/test_command_session_fork.rs"
[[test]]
name = "test_command_session_list"
path = "tests/test_command_session_list.rs"
[[test]]
name = "test_command_session_new"
path = "tests/test_command_session_new.rs"
[[test]]
name = "test_command_session_switch"
path = "tests/test_command_session_switch.rs"
[[test]]
name = "test_command_set_history"
path = "tests/test_command_set_history.rs"
[[test]]
name = "test_command_status"
path = "tests/test_command_status.rs"
[[test]]
name = "test_command_trust"
path = "tests/test_command_trust.rs"
[[test]]
name = "test_command_undo"
path = "tests/test_command_undo.rs"
[[test]]
name = "test_diffing"
path = "tests/test_diffing.rs"
[[test]]
name = "test_extra_params"
path = "tests/test_extra_params.rs"
[[test]]
name = "test_fs"
path = "tests/test_fs.rs"
[[test]]
name = "test_history_plumbing"
path = "tests/test_history_plumbing.rs"
[[test]]
name = "test_history_window"
path = "tests/test_history_window.rs"
[[test]]
name = "test_historystore"
path = "tests/test_historystore.rs"
[[test]]
name = "test_legacy_guard"
path = "tests/test_legacy_guard.rs"
[[test]]
name = "test_live_display"
path = "tests/test_live_display.rs"
[[test]]
name = "test_llm_provider"
path = "tests/test_llm_provider.rs"
[[test]]
name = "test_main"
path = "tests/test_main.rs"
[[test]]
name = "test_markdown_streamer"
path = "tests/test_markdown_streamer.rs"
[[test]]
name = "test_model_registry"
path = "tests/test_model_registry.rs"
[[test]]
name = "test_parser_stress_test"
path = "tests/test_parser_stress_test.rs"
[[test]]
name = "test_provider_router"
path = "tests/test_provider_router.rs"
[[test]]
name = "test_reasoning_robustness"
path = "tests/test_reasoning_robustness.rs"
[[test]]
name = "test_session"
path = "tests/test_session.rs"
[[test]]
name = "test_session_logic"
path = "tests/test_session_logic.rs"
[[test]]
name = "test_shared_history"
path = "tests/test_shared_history.rs"
[[test]]
name = "test_shared_history_branching"
path = "tests/test_shared_history_branching.rs"
[[test]]
name = "test_shared_history_writes"
path = "tests/test_shared_history_writes.rs"
[[test]]
name = "test_streaming_analysis"
path = "tests/test_streaming_analysis.rs"
[[test]]
name = "test_trust"
path = "tests/test_trust.rs"
[[test]]
name = "test_utils"
path = "tests/test_utils.rs"
[dependencies.chrono]
version = "0.4.42"
features = [
"serde",
"now",
"std",
]
default-features = false
[dependencies.clap]
version = "4.5.53"
features = ["derive"]
[dependencies.clap_complete]
version = "4.5.64"
features = ["unstable-dynamic"]
[dependencies.comfy-table]
version = "7.2.1"
[dependencies.crossterm]
version = "0.29.0"
[dependencies.futures-util]
version = "0.3.31"
[dependencies.regex]
version = "1.12.2"
[dependencies.reqwest]
version = "0.13.1"
features = [
"json",
"rustls-no-provider",
"stream",
]
default-features = false
[dependencies.serde]
version = "1.0.228"
features = ["derive"]
[dependencies.serde_json]
version = "1.0.148"
[dependencies.shlex]
version = "1.3.0"
[dependencies.similar]
version = "2.7.0"
[dependencies.syntect]
version = "5.3.0"
features = [
"default-syntaxes",
"default-themes",
"regex-fancy",
]
default-features = false
[dependencies.tempfile]
version = "3.24.0"
[dependencies.thiserror]
version = "2.0.17"
[dependencies.tokio]
version = "1.49.0"
features = [
"macros",
"rt",
]
[dependencies.tokio-util]
version = "0.7.17"
features = ["io"]
[dependencies.two-face]
version = "0.5.1"
features = ["syntect-default-fancy"]
default-features = false
[dependencies.unicode-width]
version = "0.2.2"
[dependencies.unicodeit]
version = "0.2.0"
[dev-dependencies.assert_cmd]
version = "2.1.1"
[dev-dependencies.assert_fs]
version = "1.1.3"
[dev-dependencies.mockito]
version = "1.7.1"
[dev-dependencies.predicates]
version = "3.1.3"
[dev-dependencies.tempfile]
version = "3.24.0"
[build-dependencies.anyhow]
version = "1.0.100"
[build-dependencies.vergen-gitcl]
version = "9.1.0"
features = [
"build",
"cargo",
"rustc",
]
[target.'cfg(all(target_arch = "riscv64"))'.dependencies.rustls]
version = "0.23.36"
features = [
"ring",
"std",
"tls12",
]
default-features = false
[target.'cfg(all(target_env = "musl", target_arch = "x86_64"))'.dependencies.tikv-jemallocator]
version = "0.6.0"
[target.'cfg(not(all(target_arch = "riscv64")))'.dependencies.rustls]
version = "0.23.36"
default-features = true
[lints.rust]
warnings = "deny"
[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
panic = "abort"
strip = true