SailCat - Mistral AI Chat Client for Sailfish OS
Source: https://github.com/nicosouv/harbour-sailcat
If you don't want to use it, feel free not to use it :)
A native Sailfish OS client for Mistral AI, bringing powerful AI conversations directly to your device with a beautiful Silica interface.
What's New in 2.x:
- Image support (vision): attach a photo and let Pixtral or any vision-capable model analyze it
- Dynamic model list: fetched live from the Mistral API, with a quick model-switcher button next to the input field
- System prompt & personas: presets (Concise, Translator, Code assistant) or your own custom instruction
- Generation settings: temperature slider and response length limit
- Message actions: regenerate the last answer, edit and resend a message, pin messages (with a pinned-messages page), copy code blocks separately
- Export conversations as Markdown to Documents, or copy them as text
- Real token tracking: per conversation, per day and per month, straight from the API usage data
- Statistics with charts: activity, token usage, question categories (auto-detected), "who writes more", fun badges (Night Owl, Model Hopper, Conversation Ghost...) and the most frequent words in AI replies
- Improved markdown rendering: protected code blocks with theme-aware colors, strikethrough, safer italics
- UI/UX overhaul: swipe from the chat to reach your conversation history, bottom pulley menu, message timestamps, typing-dots animation, live cover showing the latest answer and mini stats
- Automatic conversation titles and categories generated after the first exchange
- Fully translated: English, French, German, Spanish, Finnish, Italian
Features:
- Real-time streaming responses with Server-Sent Events (SSE)
- All current Mistral chat models, refreshed automatically from the API
- Multilingual interface: English, French, German, Spanish, Finnish, Italian
- Local conversation history with search, details and per-conversation stats
- Native Sailfish OS interface with Silica components
- Long-press a message for copy, pin, edit or regenerate
- Active cover showing the latest answer and mini stats
Requirements:
- Personal Mistral AI API key (free tier available at console.mistral.ai)
- Internet connection
Important Limitations:
- No sync with the Mistral web interface — conversations are stored locally on
- API key required — the app doesn't include a built-in key
Privacy:
- All conversations are stored locally on your device
- Your API key is stored in QSettings, isolated by Sailjail sandboxing
- No telemetry or analytics, no data shared with third parties
- Sailjail permissions: Internet, Pictures (image attachments), Documents (exports)
Getting Started:
1. Install the app
2. Get a free API key from console.mistral.ai
3. Open Settings and enter your API key
4. Start chatting!
Technical Details:
- Built with Qt 5.6 and Sailfish Silica
- Uses the Mistral AI REST API with SSE streaming
- MIT License - Free and open source
Support:
Report issues on GitHub: https://github.com/nicosouv/harbour-sailcat/issues
Developed with ❤️ for Sailfish OS
| Attachment | Size | Date |
|---|---|---|
| 182.66 KB | 13/11/2025 - 13:55 | |
| 176.19 KB | 13/11/2025 - 13:55 | |
| 189.15 KB | 13/11/2025 - 13:55 | |
| 235.94 KB | 04/07/2026 - 12:40 | |
| 215.35 KB | 04/07/2026 - 12:40 | |
| 222.84 KB | 04/07/2026 - 12:40 |
v2.0.3:
- Image support (vision): attach a photo and let Pixtral or any vision-capable model analyze it
- Dynamic model list: fetched live from the Mistral API, with a quick model-switcher button next to the input field
- System prompt & personas: presets (Concise, Translator, Code assistant) or your own custom instruction
- Generation settings: temperature slider and response length limit
- Message actions: regenerate the last answer, edit and resend a message, pin messages (with a pinned-messages page), copy code blocks separately
- Export conversations as Markdown to Documents, or copy them as text
- Real token tracking: per conversation, per day and per month, straight from the API usage data
- Statistics with charts: activity, token usage, question categories (auto-detected), "who writes more", fun badges (Night Owl, Model Hopper, Conversation Ghost...) and the most frequent words in AI replies
- Improved markdown rendering: protected code blocks with theme-aware colors, strikethrough, safer italics
- UI/UX overhaul: swipe from the chat to reach your conversation history, bottom pulley menu, message timestamps, typing-dots animation, live cover showing the latest answer and mini stats
- Automatic conversation titles and categories generated after the first exchange
- Fully translated: English, French, German, Spanish, Finnish, Italian
v1.9.5:
- Real-time streaming responses with Server-Sent Events (SSE)
- All current Mistral chat models, refreshed automatically from the API
- Multilingual interface: English, French, German, Spanish, Finnish, Italian
- Local conversation history with search, details and per-conversation stats
- Native Sailfish OS interface with Silica components
- Long-press a message for copy, pin, edit or regenerate
- Active cover showing the latest answer and mini stats
Comments
norayr
Mon, 2026/07/06 - 02:30
Permalink
this app saves me from the browser, and apparently mistral is possible to use via api key without paying, with limits of course. i think all the rest, chatgpt certainly, only provides paid tokens. so without paying one needs to use web ui which is, again, painful.
also i am amazed by the speed.
norayr
Mon, 2026/07/06 - 02:28
Permalink
btw mistral did not ask me for a phone number.
on duck, i think they don't provide api, one only has to use the models via browser. which is a pain and loads lotn of js and eats all availabre memory.
norayr
Mon, 2026/07/06 - 02:26
Permalink
this is an amazisg app! thank you so much!
unmaintained
Sat, 2025/12/20 - 13:02
Permalink
This app is really pretty quick and very well designed.
Edit: Ah just realized, it's the same dev as SFOS Meetings, so no wonder.
trial
Mon, 2025/11/17 - 18:35
Permalink
Guys, are fine?! Haven't you noticed the "Pls." meaning "please" in plain english?!?
Don't U have nothing else to do but to get offended?! Since when is "please" an act of rudeness and disrespect?
10x in advance.
nicosouv
Tue, 2025/11/18 - 02:16
Permalink
Lol, no worries, I didn’t get offended.
I can’t change or rework a system I don’t own, so there isn’t much I can modify on the app side. Its purpose is simply to use Mistral AI, and that part is okay.
That said, I can try to add an option to use duck.ai as Fingus suggested. I initially focused only on Mistral AI (hence the app name for “Le Chat” by Mistral), but maybe I can change this when I find the time.
Anyway, thanks for the conversation, and have a great day! :)
explit
Mon, 2025/11/17 - 04:28
Permalink
Absolute agree with u @nicosouv. Some ppl. act so, as they bought something what not work. As a FOSS Dev. i would be totaly pissed off reading such comments...
trial
Sun, 2025/11/16 - 15:17
Permalink
No way I'm using a service requiring my phone. Pls. Rework.
nicosouv
Sun, 2025/11/16 - 17:35
Permalink
I double-checked and the app itself only requires the standard “Internet” permission, nothing more.
If your concern is about Mistral AI asking for a phone number to obtain an API key: that part is entirely on their side. My app is just a client for that service, and I clearly mention which API it uses.
If you don’t want to use a service that requires a phone number, that’s totally fine, but in that case this app won’t be a good fit for you.
Regarding the “Pls. Rework” wording: please keep in mind this is a free, open-source project made on personal time. I’m always open to constructive feedback, but I’d appreciate a more respectful tone.
Thanks.
nicosouv
Sun, 2025/11/16 - 16:16
Permalink
I might have messed up with the permission, my bad!
fingus
Sat, 2025/11/15 - 15:54
Permalink
Why not using free www.duck.ai ?
There you dont need an API-Key.
nicosouv
Sun, 2025/11/16 - 04:00
Permalink
Hello! Because I didn't know it was a thing! I'll take a look at it! Thanks
eson
Fri, 2025/11/14 - 11:13
Permalink
To get a free API key, they also require your phone number.
Just saying...