[package]
name = "looprs"
version.workspace = true
edition.workspace = true
description = "Concise coding assistant REPL — core library"
license.workspace = true
authors.workspace = true
repository.workspace = true
homepage.workspace = true
documentation.workspace = true
rust-version.workspace = true
readme = "../../README.md"
[lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(kani)'] }
[lints.clippy]
empty_line_after_doc_comments = "allow"
map_clone = "allow"
unwrap_or_default = "allow"
new_without_default = "allow"
[dependencies]
anyhow = { workspace = true }
async-openai = { version = "0.33.0", default-features = false, features = ["rustls", "chat-completion", "byot"] }
async-trait = "0.1"
baml = "0.219.0"
chrono = { workspace = true }
claudius = "0.18.0"
colored = { workspace = true }
dirs = { workspace = true }
env_logger = "0.11"
glob = "0.3"
libc = "0.2"
log = "0.4"
looprs-core = { workspace = true }
miette = { workspace = true }
regex = "1.11"
reqwest = { version = "0.12", default-features = false, features = ["json", "rustls-tls"] }
rusqlite = { version = "0.31", features = ["bundled"] }
serde = { workspace = true }
serde_json = { workspace = true }
serde_yaml = "0.9"
sysinfo = "0.30"
thiserror = "1.0"
tokio = { workspace = true, features = ["sync"] }
toml = "0.8"
uuid = { workspace = true }
walkdir = "2.5"
[dev-dependencies]
criterion = "0.6"
insta = { version = "1.34", features = ["json", "yaml"] }
looprs-core = { workspace = true, features = ["test-contracts"] }
proptest = { workspace = true }
tempfile = { workspace = true }