A desktop app for chatting with specialised AI agents — entirely offline. Built with Tauri and llama.cpp.
| Agent | Role |
|---|---|
| Sustainability Buddy | ESG strategy, carbon accounting, sustainability reporting, green tech, and responsible business practices |
More agents coming. Adding one is a few lines of code.
- Pick an agent from the list
- On first use the model downloads automatically (~1 GB, one time)
- Chat with real-time streaming responses
- Everything runs locally — no cloud, no API keys, no content filtering
Requirements: Rust stable, Node 22+
git clone https://github.com/conscious-collective/agent22-rust
cd agent22-rust
npm install
npm run devOn first agent launch the app downloads Qwen2.5-1.5B-Instruct Q4_K_M (~1 GB) from HuggingFace and loads it directly. No external runtime required.
| Model | Size | RAM | Source |
|---|---|---|---|
| Qwen2.5-1.5B-Instruct Q4_K_M | ~1 GB | ~1.5 GB | bartowski/Qwen2.5-1.5B-Instruct-GGUF |
To swap the model, edit the three constants at the top of src-tauri/src/model.rs:
const HF_REPO: &str = "bartowski/Qwen2.5-1.5B-Instruct-GGUF";
const HF_FILE: &str = "Qwen2.5-1.5B-Instruct-Q4_K_M.gguf";
const MODEL_FILENAME: &str = "Qwen2.5-1.5B-Instruct-Q4_K_M.gguf";Any public HuggingFace GGUF repo works.
npm run build
# installer → src-tauri/target/release/bundle/- Add an entry to
AGENTSinsrc/store/app.ts:
{
id: "my-agent",
name: "My Agent",
description: "What this agent does.",
welcomeMessage: "Hi! I'm your ...",
placeholder: "Ask me anything about ...",
}- Add the matching system prompt in
src-tauri/src/commands/chat.rs:
"my-agent" => "You are a ...",That's it.
- Tauri 2.0 — Rust desktop shell
- llama-cpp-2 — GGUF inference (Rust bindings to llama.cpp)
- React 18 + TypeScript
- TailwindCSS 3
- Zustand — client state
MIT — see LICENSE.