One private desktop home for every AI model you use. Bring your own keys and keep every conversation on your machine. Talk to Anthropic, OpenAI, Gemini, xAI, Mistral, Groq, DeepSeek, OpenRouter, Ollama, or any OpenAI-compatible endpoint, side by side.
Release notes ( v0.7.0 )
A new look: refreshed color scheme across the app, carried through to the app icons.
Perplexity search: Perplexity joins the available web search providers — add your key under Keys & security and pick it as the search backend.
Nested lists in chat: the chat renderer now understands indentation, so multi-level bullet and numbered lists keep their structure instead of collapsing into one flat list. Sub-levels get their own marker style (hollow bullets, letters, roman numerals) so the hierarchy is readable at a glance, mixed bullet-and-numbered nesting works, and a wrapped line now stays part of its list item rather than breaking off into a separate paragraph.
Safer master-password changes: turning password protection on, changing the password, or turning it off is now all-or-nothing. Previously, if the database migration failed partway — most often because the just-restarted app briefly still held the database file — the app could be left demanding a password for a database that no password could open, with "reset app" as the only way out. The migrations now wait for the file lock instead of failing instantly, the app records that a password is required only after the database is genuinely encrypted with it, and a failed attempt keeps everything it needs to simply retry on the next launch.
Bug fixes: various bug fixes for a more stable experience.
Release notes ( v0.6.x )
Agent Skills: teach the model specialized workflows with the open Agent Skills format — folders holding a SKILL.md with instructions, reference files, and scripts. Enabled skills are listed to the model, which loads the full instructions on demand mid-chat, reads bundled files, and can run bundled scripts — every script run asks for your approval first (60-second timeout, working directory pinned to the skill folder). Works with every provider that supports tool calls.
Skill sources: drop skill folders into the app's skills directory (one folder or cloned repo can hold several skills in subfolders), clone a skills repo straight from a git URL, or reuse what you already have — skills in ~/.claude/skills and ~/.agents/skills are imported automatically and stay read-only.
Skills manager: the Tools page shows a compact summary (installed / enabled / invalid counts) with a Manage skills popup for the rest: enable or disable per skill, add from URL, open the folder, and remove several skills at once with checkbox selection and a confirmation. New skills always start disabled — enable the ones you trust. Invalid skills show why they were rejected instead of silently disappearing.
Master password: protect your chat with a password of your own choosing. Unlike the existing OS-keychain encryption, the password itself — via Argon2id — becomes the real database key, so there's nothing to auto-unlock: forgetting the password means the data stays unreadable. Set it, change it, or turn it off from Keys & security. On launch, a lock screen asks for the password before anything loads, with throttled retries on wrong guesses and a "reset app" option if you've truly lost it (this erases local data and starts fresh).
Prompt firewall: strip sensitive data from prompts before they ever leave your device, then restore the real values in the reply. Detection runs fully on-device — emails, phone numbers, credit cards (Luhn-checked), IBANs, SSNs, IP addresses, and URLs are tokenized into stable placeholders ([EMAIL_1]), while secrets like API keys block the send entirely. Add your own custom dictionary (project codenames, customer names) and an allowlist for terms that only look sensitive. Each value maps to a consistent placeholder so the model still reasons about relationships, and restore is echo-tolerant and streaming-safe so it never puts a value in the wrong place. Off by default; turn it on globally or per chat (Default / On / Off).
On-device ML detection: an optional local NER model catches unstructured entities that pattern rules miss — people, organizations, and locations. Runs entirely on your machine via the bundled model. Adds some latency per message since it runs on CPU.
Firewall tester: a "Test it" panel in the new Prompt Firewall settings page shows the full round trip on sample text — your original input, exactly what gets sent to the AI, and the restored result — along with detected entity types and the placeholder map. Nothing is sent to any provider.
Release notes ( v0.5.x )
Bug fixes ( v0.5.1 ): various bug fixes for a more stable experience.
Encrypted at rest ( v0.5.3 ): your local database is now fully encrypted on disk with SQLCipher (AES-256). The encryption key is generated on your machine and stored in the OS keychain, so the app still opens instantly with no password. Existing databases migrate automatically on first launch, and backups stay encrypted.