Repository navigation
Expand file tree
/
Copy pathCargo.toml
More file actions
64 lines (59 loc) · 3.21 KB
/
Copy pathCargo.toml
File metadata and controls
64 lines (59 loc) · 3.21 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
[package]
name = "mooshik"
version = "0.2.1"
edition = "2021"
license = "AGPL-3.0-only"
description = "An ambient, local-first AI cowork partner and workspace orchestrator"
[dependencies]
anyhow = "1"
argon2 = "0.5"
# uuid is the type behind `NodeId`; Mooshik parses it for prose targets.
uuid = "1.25"
# The calendar behind `memory::view`. Lambo's public types are already
# `chrono::DateTime<Utc>`, so this is the same crate arriving by name rather
# than a second one: what the direct dependency buys is `Local`, which is how a
# stored UTC instant becomes the day the reader is actually looking at.
chrono = { version = "0.4", features = ["clock"] }
chacha20poly1305 = "0.10"
clap = "4"
rand = "0.9"
serde = { version = "1", features = ["derive"] }
serde_json = "1"
schemars = "1"
toml = "0.9"
fs2 = "0.4"
libc = "0.2"
zeroize = { version = "1", features = ["serde"] }
# Pin `rev` of lambo-for-mooshik, never `branch`: GitHub's default is main,
# which does not carry the hosted adapters. Bump the SHA after a Lambo fix.
# default-features = false so embed-bge (llama.cpp) does not come along.
# embed-fixture is the test double; the product path is Vertex + Cloud SQL.
lambo = { git = "https://github.com/nrynss/lambo", rev = "4c6fc930f206e6b2505305a2c9c6990aef5fbbe8", default-features = false, features = ["store-postgres", "store-sqlite", "store-memory", "embed-gemini", "embed-bge", "embed-fixture"] }
tokio = { version = "1", features = ["macros", "rt-multi-thread", "time", "io-util", "sync", "signal", "net"] }
# Pin 0.12 so M10's rmcp (optional reqwest ^0.13.2) does not compile reqwest twice.
reqwest = { version = "0.12", default-features = false, features = ["json", "stream", "rustls-tls"] }
# MCP host (M10): client + child-process transport only. default-features =
# false is REQUIRED — rmcp's optional reqwest is ^0.13.2 and this repo pins
# 0.12; default features would compile reqwest twice.
rmcp = { version = "3.1.2", default-features = false, features = ["client", "transport-child-process"] }
parking_lot = "0.12"
# M11's TUI. ratatui 0.29 is the last release before the 0.30 split into
# ratatui-core/ratatui-crossterm, so one crate carries both the widgets and the
# backend, and `ratatui::init`/`restore` own the raw-mode and alternate-screen
# handshake. crossterm comes through ratatui's own re-export
# (`ratatui::crossterm`) rather than a second direct pin, so the event types the
# TUI matches on can never be a different crossterm than the backend reads from.
ratatui = "0.29"
[target.'cfg(target_os = "linux")'.dependencies]
keyring = { version = "3", default-features = false, features = ["linux-native-sync-persistent", "crypto-rust"] }
[target.'cfg(target_os = "macos")'.dependencies]
keyring = { version = "3", default-features = false, features = ["apple-native"] }
[profile.release]
lto = "thin"
[dev-dependencies]
# The build pin parses of_memory's body with `syn` instead of matching text:
# the receiver-respelling and indirection class the text pin could not close
# is gone at token level. "full" parses the fn item; "visit" powers the
# structural walks. Reuses the 2.0.x already vendored transitively in the
# lock (serde_derive/schemars build it), so no new compile weight.
syn = { version = "2", features = ["full", "visit"] }