Getting started
Set up OpenChat and start chatting with any supported AI provider using your own API keys.
What is OpenChat?
OpenChat is a native iOS chat app that connects directly to AI providers you configure. It's bring-your-own-key (BYOK): you need an API key from at least one supported provider. There's no OpenChat account, no backend server, and no telemetry.
OpenChat supports multiple providers in one app: OpenRouter, DeepSeek, Qwen, Mistral, OpenAI, Anthropic, Google Gemini, Moonshot AI (Kimi), Z.ai, 01.AI, Cheaper Inference, and any OpenAI-compatible custom endpoint (Ollama, LM Studio, vLLM, internal gateways). Switch models per conversation without changing apps.
Chats, rules, memory, and skills are stored locally on your device with SwiftData. API keys are stored in the iOS Keychain.
Download and install
OpenChat is free; you need your own API key from a supported provider.
You can also build from source on macOS with Xcode 16+. See the GitHub repository for instructions.
Creating API keys
OpenChat is free to use; usage is billed directly by your providers. Create a key from the console of whichever provider you want to use first:
| Provider | Where to get a key |
|---|---|
| OpenRouter | openrouter.ai/keys |
| DeepSeek | platform.deepseek.com/api_keys |
| Alibaba Cloud (Qwen) | bailian.console.aliyun.com |
| Mistral AI | console.mistral.ai/api-keys |
| OpenAI | platform.openai.com/api-keys |
| Anthropic | console.anthropic.com/settings/keys |
| aistudio.google.com/apikey | |
| Moonshot AI (Kimi) | platform.moonshot.cn/console/api-keys |
| Z.ai | z.ai/manage-apikey/apikey-list |
| 01.AI | platform.lingyiwanwu.com/apikeys |
| Cheaper Inference | cheaperinference.com/signup |
You only need one provider to start. Add more anytime from Settings.
Connecting your first provider
- On first launch, tap Connect a Provider on the welcome screen.
- Pick a provider from the list (or choose Custom Endpoint for self-hosted servers).
- Paste your API key and save. The key is stored in the iOS Keychain.
- OpenChat fetches the provider's live model catalog in the background.
To add more providers later, open Settings (gear icon in the chat history drawer) → Add a Provider.
Each connected provider appears in Settings under Providers, where you can view details, update keys, or disable the provider.
Sending your first message
- After connecting a provider, OpenChat opens a new chat automatically.
- Tap the model name in the navigation bar to confirm or change the model.
- Type your message in the composer at the bottom and tap the send button.
- The assistant reply streams in with full Markdown rendering.
Chats are auto-titled from your first message. You can rename them later from the chat history drawer.
Choosing and switching models
Each conversation has its own model. Tap the model name in the top navigation bar to open the model picker.
- Search: filter models by name across all connected providers.
- Provider filter: narrow results to specific providers.
- Capability filter: show only models with vision, tools, or other capabilities.
- Star models: favorite frequently used models for quick access.
OpenRouter users get access to OpenRouter's full public catalog. Other providers show models fetched from their live /models endpoint.
Switching models mid-conversation is supported. If the new model does not support attachments already in the chat, OpenChat will warn you before switching.