• v2.3.2 5f9631077b

    rune released this 2026-02-20 14:24:22 +01:00 | 2 commits to main since this release

    v2.3.2

    Settings redesign

    The Settings panel has been rebuilt from the ground up:

    • Icon toolbar - Nine tabs now shown as labelled SF Symbol icons, split into Core (General, MCP, Appearance, Advanced) and Extras (Shortcuts, Skills, Sync, Email, Paperless). Much less cramped than the old segmented picker.
    • Card layout - Settings rows are grouped into rounded-rect cards with a material background, adapting cleanly to light and dark mode.
    • Close button - The Done button is gone. A standard ✕ button sits in the top-left corner where macOS users expect it.
    • Paperless tab - New tab for configuring the Paperless-NGX document integration.

    Version & release check

    • Release check - On startup we check if there is a new release available. Will show up in footer if available.
    • Version info - Show version number In the footer.
    Downloads
  • v2.3.1 f3d673ab27

    rune released this 2026-02-19 16:51:36 +01:00 | 5 commits to main since this release

    v2.3.1 — First Public Release

    This is the first publicly available version of oAI.

    oAI is a native macOS AI chat application built with SwiftUI. It connects to multiple AI providers, supports persistent conversations, and includes a broad set of power-user features — all packaged in a clean, keyboard-driven interface.


    Providers & Models

    oAI supports five AI providers out of the box:

    • OpenRouter — Access hundreds of models from a single API key, including GPT-4o, Gemini, Llama, Mistral, and more
    • Anthropic — Direct access to Claude (Opus, Sonnet, Haiku)
    • OpenAI — GPT-4o, GPT-4 Turbo, o1, and others
    • Google — Gemini Pro and Gemini Flash
    • Ollama — Run models locally with no API key required

    Switch providers and models at any time from the toolbar or with ⌘M. Model capabilities (vision, tools, web search) are shown as badges in the header.


    Chat Interface

    • Streaming responses — Text appears word by word as the model generates it
    • Markdown rendering — Full markdown support in assistant messages: headings, bold, italic, code blocks with syntax highlighting, tables, and lists
    • Multi-line inputShift+Return for newlines, Return (or ⌘Return) to send
    • Auto-continue — Long responses that hit token limits are automatically continued
    • Copy button — Hover over any assistant message to copy it
    • Star button — Mark important messages to prioritise them in long conversations
    • Processing indicator — Animated indicator while the model is thinking

    Slash Commands

    Type / in the input bar to see available commands with autocomplete:

    Command Description
    /new Start a new conversation
    /save <name> Save the current conversation
    /load Browse saved conversations
    /model Open model selector
    /clear Clear the current chat
    /retry Regenerate the last response
    /history Browse command history
    /online on|off Toggle web search
    /memory on|off Toggle conversation memory
    /mcp on|off|list|add Manage file access
    /shortcuts Manage prompt shortcuts
    /skills Manage agent skills
    /stats Session statistics
    /export md Export conversation as Markdown
    /help Show all commands

    Shortcuts (Prompt Macros)

    Define your own slash commands that expand to prompt templates. For example, /summarize could expand to "Please summarise the following in three bullet points:". Templates support an {{input}} placeholder so you can type additional context inline before sending.

    Shortcuts are managed via /shortcuts or Settings → Shortcuts. Import and export as JSON.


    Agent Skills (SKILL.md)

    Attach behavioural instruction files to the AI — compatible with the open SKILL.md standard. Active skills are injected into the system prompt automatically, giving the model persistent expertise or a specific persona. Import from .md files, toggle per-skill, and export back to .md.

    Managed via /skills or Settings → Skills.


    Conversation Management

    • Persistent storage — All conversations saved to a local SQLite database
    • Save indicator — Footer shows whether the current chat is saved, modified, or unsaved
    • Quick save⌘⇧S re-saves without typing a name again
    • Search — Find saved conversations by keyword or by meaning (semantic search)
    • Multi-select delete — Bulk-delete conversations from the list
    • Export — Save any conversation as a Markdown file

    Enhanced Memory & Context

    Three optional systems to keep long conversations accurate and efficient:

    Smart Context Selection
    Intelligently picks which messages to include rather than sending the entire history. Always includes recent messages and any starred messages. Configurable token budget. Reduces API costs by up to 80% for long conversations.

    Semantic Search
    Generates embeddings for all messages and conversations, enabling meaning-based search ("find where we discussed authentication") rather than exact keyword matching. Supports OpenAI, OpenRouter, and Google embedding models.

    Progressive Summarisation
    When a conversation grows past a configurable threshold, older messages are automatically summarised into a compact 2–3 paragraph digest that is included in the system prompt. Keeps context window usage low without losing important history.

    All three features are off by default and can be enabled independently in Settings → Advanced.


    MCP — File Access

    The Model Context Protocol gives the AI controlled access to files on your Mac. You define which folders are allowed, and the model can read, search, and (optionally) write files within them. Gitignore rules are respected when listing directories.

    Configure allowed folders and permissions in Settings → MCP, or via /mcp commands.


    Web Search (Online Mode)

    Toggle online mode with /online on or the ⌘O header indicator. When active, the AI can search the web via DuckDuckGo or Google to answer questions about current events, documentation, or anything beyond its training data.


    Git Sync

    Optionally back up and sync your conversation history to any Git repository. oAI exports conversations as human-readable Markdown files, commits them, and pushes automatically. On launch it pulls the latest changes and imports anything new.

    Sync triggers: app start, model switch, idle period, and app quit. Configure in Settings → Sync.


    Email Handler

    An optional AI-powered email responder. oAI monitors an IMAP inbox and automatically replies to emails matching a configurable subject identifier (e.g. [Jarvis]). Replies are generated by the configured AI provider and sent via SMTP. All processed emails are logged.

    Configure IMAP/SMTP credentials, the subject filter, AI model, and rate limits in Settings → Email.


    Command History

    Every message you send is stored in a searchable command history (up to 5,000 entries). Open it with ⌘H or /history, then click any entry to load it back into the input bar.


    macOS Integration

    • Standard app menus — File menu with New Chat (⌘N), Open Chat (⌘O), Save Chat (⌘⇧S), and Export
    • Toolbar — Quick access to conversations, history, model selector, stats, settings, and help
    • Keyboard shortcuts — Most actions are reachable without touching the mouse
    • Dark mode — Native dark appearance throughout
    • Hidden title bar — Clean, distraction-free window chrome

    Settings Overview

    Tab Contents
    Providers API keys, default model, temperature, max tokens, streaming
    MCP File access folders and permissions
    Sync Git repository URL and credentials
    Email IMAP/SMTP configuration and AI model
    Appearance Text sizes, toolbar icon size and labels
    Shortcuts Prompt macro management
    Skills Agent skill management

    System Requirements

    • macOS 14 (Sonoma) or later
    • Apple Silicon or Intel Mac
    • At least one configured AI provider API key (or Ollama running locally)

    Known Limitations

    • IMAP IDLE is not supported — the email handler polls every 30 seconds
    • Notarization is not included in this release; Gatekeeper may require a one-time right-click → Open on first launch
    • Ollama must be running locally before launching oAI for local models to appear

    oAI is free software licensed under the GNU Affero General Public License v3.0 or later.

    Downloads