FlexiGPT

FlexiGPT is a local-first desktop app for working with multiple LLM providers from one workspace.
Use your own provider keys, switch between models and providers, keep conversations and search local, and build repeatable agentic/human-in-loop workflows with assistant presets, prompt templates, tools and skills.
Early access
FlexiGPT is under active development. Expect breaking changes, evolving built-ins, and incomplete areas between releases.
Why FlexiGPT
- One desktop workspace for multiple provider families and compatible APIs
- Reusable assistant presets, model presets, prompts, tools, and skills. Rich builtins to get you started and fully customizable to suit your specific needs.
- In chat, agentic flows through tunable tool auto-executes.
- File, folder, image, PDF, and URL context support
- Built for iterative, real-world usage: compare models, attach context, reuse setups, inspect responses, and keep your workspace local by default.
Quick start
- Download the latest release from GitHub Releases.
- Install the package for your platform:
- macOS:
.pkg
- Windows:
.exe
- Linux:
.flatpak
- Launch FlexiGPT and open Settings.
- In Auth Keys, add at least one provider API key.
- Open Chats.
- Pick an Assistant Preset and Model Preset, or keep the defaults.
- Type a message, optionally add attachments, prompts, tools, or skills, then send.
FlexiGPT does not bill you directly. Usage costs and rate limits come from the provider account behind the API key you add.
Key Features
Multi-provider connectivity with built-in presets
- First-class support for OpenAI, Anthropic, Google Gemini API, DeepSeek, xAI, Hugging Face, OpenRouter, and local
llama.cpp
- Support for compatible custom endpoints across OpenAI Chat Completions, OpenAI Responses, and Anthropic Messages style APIs
- Built-in providers and curated model presets for leading models so you can get started quickly without manually defining endpoints or defaults first
- API keys are stored securely through the OS keyring, not in plain-text exported settings
Unified chat workspace
- One interface for chats, tabs, attachments, prompts, tools, skills, presets, search, and exports
- Switch providers or models as you iterate
- Multi-tab conversations with local history search and resume flows
- Export the current conversation as JSON
Human-in-loop and agentic workflows
- Assistant presets bundle model choice, instructions, tools, and skills into reusable starting setups
- Tools can be attached per conversation and configured for manual review or auto-execution
- When an auto-execute tool is called, FlexiGPT can run it and automatically submit the result back to the model, enabling agentic workflows inside a normal chat flow
- Keep tools manual when you want tighter control over execution
Rich response rendering and inspection
- Markdown rendering with syntax-highlighted code blocks
- Mermaid diagram rendering with zoom and source or image export workflows
- KaTeX math rendering
- Citations, token usage, and per-message request/response details for inspection and debugging
- Message-level controls for copying, inspection, and follow-up iteration
Local-first context and history
- Local conversation storage and full-text search
- File, folder, image, PDF, and URL attachments
- Bundled offline docs shipped inside the app
- Use your own provider accounts; FlexiGPT does not proxy or bill model usage
Documentation
Detailed usage docs live in frontend/app/docs/content/ and are also bundled into the app.
Recommended reading order:
| Doc |
What it covers |
| Getting started |
First-run setup and your first successful chat |
| Core concepts |
The main FlexiGPT concepts: providers, assistant presets, model presets, prompts, tools (+ auto-execute), skills, attachments, and context |
| App tour and chat workflow |
Where things live in the UI and the normal day-to-day workflow |
| Getting better results |
Best practices for improving output quality and troubleshooting weak results |
| Privacy, storage, usage` |
What stays local, what can be sent to providers, and debug/privacy caveats |
Install
MacOS
- Download the
.pkg release package.
- Click to install the
.pkg. It will walk you through the installation process.
- Local data (settings, conversations, logs) is stored at:
~/Library/Containers/io.github.flexigpt.client/Data/Library/Application\ Support/flexigpt/
Windows
- Download the
.exe release package.
- Click to install the
.exe. It will walk you through the installation process.
- Note: Windows builds have undergone very limited testing.
Linux
-
Download the .flatpak release package.
-
If Flatpak is not installed, enable it for your distribution
-
Ubuntu/Debian/etc (APT based systems):
sudo apt update # update packages
sudo apt install -y flatpak # install flatpak
sudo apt install -y gnome-software-plugin-flatpak # optional, enables flathub packages in gnome sofware center
flatpak remote-add --if-not-exists flathub https://dl.flathub.org/repo/flathub.flatpakrepo
-
Some additional helper commands can be found in this script
-
Install the package
flatpak install --user FlexiGPT-xyz.flatpak
flatpak info io.github.flexigpt.client
-
Running the app
- Using launcher GUI: You can launch the app from your distributions's launcher. E.g: In Ubuntu: Press the window key, type flexigpt and click on icon.
- Using terminal:
flatpak run io.github.flexigpt.client
- Known issue with Nvidia drivers:
-
Your local data (settings, conversations, logs) will be at:
~/.var/app/io.github.flexigpt.client/data/flexigpt
Built With
Contributing
License
Copyright (c) 2024 - Present - Pankaj Pipada
All source code in this repository, unless otherwise noted, is licensed under the Mozilla Public License, v. 2.0. See LICENSE for details.