Klee

March 20, 2026 ยท View on GitHub

A native macOS AI agent that runs entirely on your Mac. No cloud, no account, no subscription.

Klee uses MLX to run large language models directly on Apple Silicon, so your conversations never leave your device.

Features

  • 100% local inference -- your data stays on your Mac
  • No account or API key required -- download and start chatting
  • One-click model download -- pick a model, Klee handles the rest
  • Native tool calling -- the AI can read/write files, search the web, and run shell commands
  • Vision support -- attach images to your messages with supported VLM models
  • Web search -- search the web via Jina AI (free API key, configurable in sidebar)
  • Streaming responses -- tokens appear as they're generated
  • Inline thinking -- see the model's reasoning process in a collapsible card
  • Platform modules -- extend the AI with native Swift integrations (coming soon)
  • Lightweight -- ~75MB native SwiftUI app, no Electron, no Docker, no background services

System Requirements

RequirementMinimum
macOS15.0 (Sequoia) or later
ChipApple Silicon (M1 or later)
RAM16 GB (see model table below)

More RAM unlocks larger, more capable models:

RAMRecommended Models
16 GBQwen 3.5 9B, Qwen 3 8B, Gemma 3 12B, DeepSeek R1 8B
32 GBQwen 3.5 27B, Qwen 3.5 35B (MoE)
64 GBGemma 3 27B, DeepSeek R1 32B
96 GB+Qwen 3.5 122B (MoE)

Install

Klee is distributed directly as a signed macOS app (Developer ID), not through the App Store.

  1. Download the latest .dmg from Releases
  2. Drag Klee into your Applications folder
  3. Open Klee -- if macOS shows a Gatekeeper warning, go to System Settings > Privacy & Security and click "Open Anyway"

Usage

  1. Open Klee -- the app detects your system RAM and shows compatible models
  2. Download a model -- tap the download button next to any recommended model. Downloads resume automatically if interrupted
  3. Start chatting -- select the downloaded model and type your message

The AI can help you with file operations, web lookups, and shell commands -- just ask naturally.

Web Search Setup (Optional)

To enable web search:

  1. Get a free API key at jina.ai (no credit card needed)
  2. Click the sidebar toggle button (top-right)
  3. Enable Web Search and paste your API key
  4. Ask Klee to search for anything

Models are cached in ~/.klee/models/ and persist across app restarts.

Supported Models

All models are 4-bit quantized variants from the mlx-community on HuggingFace.

ModelSizeMin RAMVisionHuggingFace ID
Qwen 3.5 9B~6 GB16 GBYesmlx-community/Qwen3.5-9B-4bit
Qwen 3 8B~4.3 GB16 GBmlx-community/Qwen3-8B-4bit
Gemma 3 12B~8 GB16 GBmlx-community/gemma-3-12b-it-qat-4bit
DeepSeek R1 8B~4.6 GB16 GBmlx-community/DeepSeek-R1-0528-Qwen3-8B-4bit
Qwen 3.5 27B~16 GB32 GBYesmlx-community/Qwen3.5-27B-4bit
Qwen 3.5 35B (MoE)~20 GB32 GBYesmlx-community/Qwen3.5-35B-A3B-4bit
Gemma 3 27B~17 GB64 GBmlx-community/gemma-3-27b-it-qat-4bit
DeepSeek R1 32B~18 GB64 GBmlx-community/DeepSeek-R1-Distill-Qwen-32B-4bit
Qwen 3.5 122B (MoE)~70 GB96 GBYesmlx-community/Qwen3.5-122B-A10B-4bit

Built-in Tools

Klee uses native tool calling (mlx-swift-lm ToolCall API) -- no MCP, no Node.js, no external processes.

ToolDescription
file_writeCreate or overwrite files
file_readRead file contents
file_listList directory contents
file_deleteDelete files
web_searchSearch the web (requires Jina API key)
web_fetchFetch and extract webpage content
shell_execExecute shell commands (30s timeout)

Build from Source

Requires Xcode 16+ and macOS 15.0+.

git clone https://github.com/signerlabs/Klee.git
cd Klee
open Klee.xcodeproj

Select the Klee scheme, then build and run (Cmd+R). SPM dependency (mlx-swift-lm) will resolve automatically on first build.

Acknowledgements

Klee was built with components and architecture from ShipSwift.

License

MIT