Getting Started
+oAI is a powerful AI chat assistant that connects to multiple AI providers including OpenAI, Anthropic, OpenRouter, and local models via Ollama.
+ +Quick Start
+-
+
- Add an API key: Press β, to open Settings, then add your API key for your preferred provider +
- Select a model: Press βM or type
/modelto choose an AI model
+ - Start chatting: Type your message and press Return to send +
/ in the message input to see all available commands with autocomplete suggestions.
+ AI Providers & API Keys
+oAI supports multiple AI providers. You'll need an API key from at least one provider to use the app.
+ +Supported Providers
+-
+
- OpenRouter - Access to 300+ models through a single API (openrouter.ai) +
- Anthropic - Claude models (Opus, Sonnet, Haiku) (console.anthropic.com) +
- OpenAI - GPT-4, GPT-4 Turbo, GPT-3.5 models (platform.openai.com) +
- Ollama - Run models locally on your Mac (ollama.ai) +
Adding an API Key
+-
+
- Press β, or type
/configto open Settings
+ - Select the Providers tab +
- Enter your API key for the desired provider +
- Click Save +
Switching Providers
+Use the provider dropdown in the header or type:
+/provider anthropic
+ /provider openai
+ /provider openrouter
+ Selecting Models
+Different models have different capabilities, speeds, and costs. Choose the right model for your task.
+ +Opening the Model Selector
+-
+
- Press βM +
- Type
/model
+ - Click the model name in the header +
Model Information
+View details about any model:
+/info
+ Shows information about the currently selected model including context length, pricing, and capabilities.
+ +Default Model
+Your selected model is automatically saved and will be restored when you restart the app.
+Sending Messages
+ +Basic Usage
+-
+
- Type your message in the input field +
- Press Return to send (single-line messages) +
- Press β§Return to add a new line without sending +
During Generation
+While the AI is responding:
+-
+
- Press Esc to cancel generation +
- Click the Stop button (red circle) +
- Cancelled responses show a β οΈ interrupted indicator +
Retrying Messages
+If you're not satisfied with a response:
+/retry
+ Resends your last message to generate a new response.
+File Attachments
+Attach files to your messages for the AI to analyze. Supports images, PDFs, and text files.
+ +Attaching Files
+-
+
- Click the π paperclip icon to browse and select files +
- Type
@/path/to/file.txtin your message
+ - Type
@~/Documents/image.pngfor files in your home directory
+
Supported File Types
+-
+
- Images: PNG, JPEG, GIF, WebP, BMP, SVG (max 10 MB) +
- Documents: PDF (max 10 MB) +
- Text: TXT, code files, logs, etc. (max 50 KB) +
Slash Commands
+Commands start with / and provide quick access to features. Type / to see suggestions.
Chat Commands
+-
+
- /history +
- View command history with timestamps (European format: dd.MM.yyyy). Search by text or date to find previous messages + +
- /clear +
- Clear all messages from the current session + +
- /retry +
- Retry your last message to get a new response + +
- /memory on|off +
- Toggle conversation memory. When off, only your latest message is sent (no conversation history) + +
- /online on|off +
- Enable/disable web search. When on, the AI can search the web for current information +
Model & Provider Commands
+-
+
- /model +
- Open the model selector + +
- /provider [name] +
- Switch AI provider or show current provider + +
- /info +
- Display information about the current model + +
- /credits +
- Check your account balance (OpenRouter only) +
Conversation Commands
+-
+
- /save <name> +
- Save the current conversation + +
- /load +
- Browse and load a saved conversation + +
- /list +
- Show all saved conversations + +
- /delete <name> +
- Delete a saved conversation + +
- /export md|json +
- Export conversation as Markdown or JSON +
MCP Commands
+-
+
- /mcp on|off +
- Enable/disable file access for the AI + +
- /mcp add <path> +
- Grant AI access to a folder + +
- /mcp remove <path> +
- Revoke AI access to a folder + +
- /mcp list +
- Show all accessible folders + +
- /mcp status +
- Display MCP status and permissions + +
- /mcp write on|off +
- Enable/disable write permissions +
Settings Commands
+-
+
- /config, /settings +
- Open the settings panel + +
- /stats +
- Show session statistics (messages, tokens, cost) +
Memory & Context
+Control how much conversation history the AI remembers.
+ +Memory Enabled (Default)
+When memory is on, the AI remembers all previous messages in your session. This allows for natural, flowing conversations.
+ +Memory Disabled
+When memory is off, only your latest message is sent. Each message is independent. Useful for:
+-
+
- Quick, unrelated questions +
- Reducing token usage and cost +
- Avoiding context pollution +
Toggle Memory
+/memory on
+ /memory off
+
+ Online Mode (Web Search)
+Enable the AI to search the web for current information before responding.
+ +When to Use Online Mode
+-
+
- Questions about current events +
- Recent news or updates +
- Real-time data (weather, stocks, etc.) +
- Information beyond the AI's training cutoff +
Enabling Online Mode
+/online on
+
+ How It Works
+When online mode is enabled:
+-
+
- Your question is used to search the web +
- Relevant results are retrieved +
- Search results are added to your message context +
- The AI uses the web results to inform its response +
MCP (File Access)
+MCP (Model Context Protocol) allows the AI to access, read, and optionally modify files on your computer.
+ +Setting Up MCP
+-
+
- Enable MCP:
/mcp on
+ - Add a folder:
/mcp add ~/Projects/myapp
+ - Ask the AI questions about your files +
What the AI Can Do
+Read permissions (always enabled when MCP is on):
+-
+
- Read file contents +
- List directory contents +
- Search for files +
- Get file information (size, modified date, etc.) +
Write permissions (optional, disabled by default):
+-
+
- Write and edit files +
- Create new files +
- Delete files +
- Create directories +
- Move and copy files +
Managing Permissions
+Toggle all write permissions:
+/mcp write on
+ /mcp write off
+
+ For fine-grained control, open Settings β MCP to enable/disable individual permissions.
+ +Gitignore Respect
+When enabled in Settings, MCP will ignore files and folders listed in .gitignore files.
Example Usage
+You: "What files are in my project folder?"
+AI: (uses MCP to list files) "I found 15 files including src/main.py, README.md..."
+Managing Conversations
+Save, load, and export your chat conversations.
+ +Saving Conversations
+/save my-project-chat
+ Saves all current messages under the specified name.
+ +Loading Conversations
+/load
+ Opens a list of saved conversations. Select one to load.
+ +Viewing Saved Conversations
+-
+
- Press βL +
- Type
/list
+
Deleting Conversations
+/delete old-chat
+ Warning: This action cannot be undone.
+ +Exporting Conversations
+Export to Markdown or JSON format:
+/export md
+ /export json
+ Files are saved to your Downloads folder.
+Keyboard Shortcuts
+Work faster with these keyboard shortcuts.
+ +General
+-
+
- β, +
- Open Settings + +
- β/ +
- Show in-app Help + +
- β? +
- Open this Help (macOS Help) + +
- βL +
- Browse Conversations + +
- βH +
- Command History + +
- βM +
- Model Selector + +
- βK +
- Clear Chat + +
- β§βS +
- Show Statistics +
Message Input
+-
+
- Return +
- Send message (single-line messages) + +
- β§Return +
- New line (multi-line messages) + +
- Esc +
- Cancel generation or close command dropdown + +
- β β +
- Navigate command suggestions (when typing /) + +
- Return +
- Select highlighted command (when dropdown is open) +
Settings
+Customize oAI to your preferences. Press β, to open Settings.
+ +Providers Tab
+-
+
- Add and manage API keys for different providers +
- Switch between providers +
- Set default models +
MCP Tab
+-
+
- Manage folder access permissions +
- Enable/disable write operations +
- Configure gitignore respect +
Appearance Tab
+-
+
- Adjust text sizes for input and dialog +
- Customize UI preferences +
Advanced Tab
+-
+
- Enable/disable streaming responses +
- Set maximum tokens (response length limit) +
- Adjust temperature (creativity vs focus) +
- Configure system prompts (see below) +
System Prompts
+System prompts are instructions that define how the AI should behave and respond. They set the "personality" and guidelines for the AI before it sees any user messages.
+ +What Are System Prompts?
+System prompts are special instructions sent to the AI with every conversation. Unlike your regular messages, system prompts:
+-
+
- Are invisible to you in the chat interface +
- Set behavioral guidelines for the AI +
- Establish the AI's role, tone, and constraints +
- Are sent automatically with every message +
- Help ensure consistent, reliable responses +
Default System Prompt
+oAI includes a carefully crafted default system prompt that emphasizes:
+-
+
- Accuracy First - Never invent information or make assumptions +
- Ask for Clarification - Request details when requests are ambiguous +
- Honest About Limitations - Clearly state when it cannot help +
- Stay Grounded - Base responses on facts, not speculation +
- Be Direct - Provide concise, relevant answers +
Note: The default prompt is always active and cannot be disabled. It ensures the AI provides accurate, helpful responses and doesn't fabricate information.
+ +Custom System Prompt
+You can add your own custom instructions that will be appended to the default prompt. Use custom prompts to:
+-
+
- Define a specific role (e.g., "You are a Python expert") +
- Set output format preferences (e.g., "Always provide code examples") +
- Add domain-specific knowledge or context +
- Establish tone or communication style +
- Create task-specific guidelines +
How Prompts Are Combined
+When you send a message, oAI constructs the complete system prompt like this:
+ +Complete System Prompt =
+-
+
- Default Prompt (always included) +
- + Your Custom Prompt (if set) +
- + MCP Instructions (if MCP is enabled) +
This combined prompt is sent with every message to ensure consistent behavior.
+Editing System Prompts
+To view or edit system prompts:
+-
+
- Press β, to open Settings +
- Go to the Advanced tab +
- Scroll to the System Prompts section +
- View the default prompt (read-only) +
- Add your custom instructions in the editable field below +
Best Practices
+-
+
- Be Specific - Clear instructions produce better results +
- Keep It Simple - Don't overcomplicate your custom prompt +
- Test Changes - Try your prompt with a few messages to see if it works +
- Start Empty - The default prompt works well; only add custom instructions if needed +
- Avoid Contradictions - Don't contradict the default prompt's guidelines +