Every AI tool I tried had the same trade-off: send your data to the cloud to get anything useful. I wanted something different — a native desktop app where I own my data, pick my providers, and the AI still has real power.
So I built OpenPawz.
What is OpenPawz?
OpenPawz is an open-source, native desktop AI platform built with Tauri v2 (Rust backend, TypeScript frontend). It ships as a ~5 MB binary — no Electron, no Node.js backend, no open network ports.
It runs fully offline with Ollama, connects to any OpenAI-compatible provider (OpenAI, Anthropic, Gemini, DeepSeek, Grok, Mistral, OpenRouter, and more), and gives you multi-agent orchestration, 75+ built-in tools, and 11 channel bridges — all controlled from your desktop.
GitHub: github.com/OpenPawz/openpawz
Why Another AI Tool?
Three things bothered me about existing solutions:
Privacy — Most AI tools phone home. Your prompts, your data, your credentials — all flowing to someone else's servers. OpenPawz has zero telemetry, zero open ports, and encrypts all credentials with AES-256-GCM in your OS keychain.
Lock-in — Most tools chain you to one provider. OpenPawz supports 10 providers out of the box plus any custom OpenAI-compatible endpoint. Switch models mid-conversation. Run local and cloud simultaneously.
Control — AI agents doing real things on your machine is scary. OpenPawz puts 7 security layers between the agent and your OS. Every tool call flows through the Rust engine where it's classified, risk-scored, and — for anything with side effects — shown to you for approval before it runs.
Architecture at a Glance
Frontend (TypeScript) Rust Engine
┌──────────────────────┐ ┌────────────────────────────────┐
│ Vanilla DOM · 20+ views │◄── IPC ──►│ Tauri commands │
│ Feature modules │ (typed) │ Channel bridges │
│ Material Icons │ │ AI providers │
│ │ │ Tool executor + HIL approval │
└──────────────────────┘ │ AES-256-GCM encrypted SQLite │
│ OS keychain · Docker sandbox │
└────────────────────────────────┘
No Node.js backend. No gateway process. No open ports. Everything flows through Tauri IPC.
The codebase is ~86k LOC (39k Rust + 35k TypeScript + 12k CSS), with 600+ automated tests across a 3-job CI pipeline: Rust (check + test + clippy with -D warnings), TypeScript (tsc + eslint + vitest + prettier), and Security (cargo audit + npm audit).
Key Features
Multi-Agent System
Create unlimited agents with custom personalities, models, and tool policies. Agents can:
- Delegate tasks via boss/worker orchestration
- Spawn sub-agents at runtime
- Communicate through direct messages, broadcasts, and squad channels
- Form squads with coordinator roles for collaborative tasks
7-Layer Security Model
The agent never touches the OS directly. Every tool call goes through the Rust engine:
- Prompt injection scanner — Dual TypeScript + Rust detection, 30+ patterns
- Command risk classifier — 30+ danger patterns across 5 risk levels (Critical auto-denies by default)
- Human-in-the-Loop approval — side-effect tools require explicit user approval
- Per-agent tool policies — allowlist, denylist, or unrestricted per agent
-
Container sandboxing — Docker isolation with
CAP_DROP ALL, memory/CPU limits, network disabled - Browser network policy — domain allowlist/blocklist prevents data exfiltration
- Credential vault — OS keychain + AES-256-GCM; keys never appear in prompts
11 Channel Bridges
Telegram · Discord · IRC · Slack · Matrix · Mattermost · Nextcloud Talk · Nostr · Twitch · WebChat · WhatsApp
Each bridge includes user approval flows, per-agent routing, and uniform start/stop/config. The same agent brain, memory, and tools work across every platform.
75+ Built-in Tools
File operations, shell execution, web fetch, browser automation, email (IMAP/SMTP), GitHub integration, DeFi trading (7 EVM chains + Solana), research workflows, task management, inter-agent messaging, and more — all with encrypted credential injection and risk classification.
Hybrid Memory
BM25 + vector similarity search with Ollama embeddings, MMR re-ranking for diversity, temporal decay (30-day half-life), plus a Memory Palace visualization UI.
Quick Start
git clone https://github.com/OpenPawz/openpawz.git
cd paw
npm install
npm run tauri dev
Prerequisites: Node.js 18+, Rust (latest stable), and Tauri prerequisites.
That's it. No cloud account, no API key required for local models. Add a provider API key under Settings if you want to use cloud models.
The Stack
| Layer | Technology |
|---|---|
| Framework | Tauri v2 |
| Backend | Rust (async with Tokio) |
| Frontend | TypeScript (vanilla DOM — no React, no Vue) |
| Database | SQLite (21 tables, AES-256-GCM encrypted fields) |
| Bundler | Vite |
| Testing | vitest (TypeScript) + cargo test (Rust) |
| CI | GitHub Actions (3 parallel jobs) |
What's Next
- v0.2 — Stable release binaries, Homebrew/AUR/Snap/Flatpak packages
- v0.3 — Plugin API, PawzHub marketplace launch
- v0.4 — Mobile companion (iOS/Android), cloud sync opt-in
- v1.0 — Production-ready with full enterprise hardening
Get Involved
OpenPawz is MIT-licensed and contributions are welcome:
- Star the repo: github.com/OpenPawz/openpawz
- Join our Matrix room: #openpawz:matrix.org
- Follow on Bluesky: @openpawz.bsky.social
- Read the contributing guide: CONTRIBUTING.md
- Sponsor the project: GitHub Sponsors
If you've been looking for an AI platform that respects your privacy, doesn't lock you in, and gives you real control — give OpenPawz a try and let me know what you think.
Top comments (0)