What Is PyGPT and What Can You Do With This Open-Source Desktop AI Assistant?
Updated
PyGPT is a free, open-source desktop AI assistant for Windows, Linux, and macOS that puts cloud models and local models in one application. You can chat with OpenAI, Claude, Gemini, Grok, DeepSeek, Sonar, or Hugging Face models, or run Llama, Qwen, and Mistral locally through Ollama — then add agents, file search, Python execution, and MCP tools without switching apps. It suits people who want one workspace for multiple providers and their own API keys, and who prefer a local app over a browser tab. The current release shown on the site is v2.9.0.
What PyGPT actually is
PyGPT is a desktop application, not a web service. The project describes itself as "your free, open-source desktop AI assistant" and ships for Windows, Linux, and macOS. Because it runs on your machine, it can reach local files, local models, and system commands in ways a browser-based chat tool typically cannot.
The app is organized around a few building blocks:
- Models — cloud APIs plus local Ollama models, with a model editor and importer.
- Agents — a primary agent, an orchestrator, or a swarm.
- Knowledge — LlamaIndex RAG over files, websites, images, audio/video, and past conversations.
- Tools — Python/IPython, system commands, MCP servers, and a scheduler.
- Workspace — profiles, presets, plugins, themes, keyboard shortcuts, and built-in tools like Notepad, Painter, a browser, and a calendar.
Models: cloud and local in one place
The site lists these providers: OpenAI, Claude, Gemini, Grok, DeepSeek, Ollama, Perplexity/Sonar, Hugging Face, and other OpenAI-compatible APIs. Local models run through Ollama — the page names Llama, Qwen, and Mistral as examples.
Two practical implications:
- You bring your own keys. The app is described as using "your API keys" and "your models," so cloud usage is tied to accounts you already have with those providers. The site does not state that any cloud provider is included free.
- Local models avoid cloud calls entirely. If a task involves sensitive files, running a local Ollama model keeps the model on your hardware. That is a configuration choice, not a default — you still select which model a chat or agent uses.
Agents, skills, and projects
PyGPT supports multi-agent workflows in three shapes: a primary agent, an orchestrator, or a swarm. It also imports portable SKILL.md skills and applies project-specific AGENTS.md instructions.
A concrete example: you keep a SKILL.md that describes how to summarize a changelog, and an AGENTS.md in a project folder that says which files matter and which conventions to follow. When you work in that project, the agent picks up those instructions instead of you re-explaining them each session.
RAG and conversation memory
Knowledge features are built on LlamaIndex. According to the site, you can index:
- files
- websites
- images
- audio and video
- previous conversations
It supports vector stores, embeddings, and separate project indexes. Separate indexes matter when you do not want one project's documents surfacing in another project's answers — you scope retrieval per project rather than pooling everything.
Python, MCP, and automation
PyGPT can run Python/IPython and system commands with sandbox or Docker support. It connects MCP servers, calls APIs, and schedules recurring tasks.
The sandbox/Docker option is the part worth noting for anyone running generated code: it is a containment choice, and the site presents it as available support rather than a guarantee. If you plan to execute model-written code, decide deliberately whether to run it sandboxed, in Docker, or directly.
Voice, vision, and generation
The app covers realtime voice, speech recognition, and synthesis. It can analyze images and camera input, and generate images and video with supported models. "Supported models" is the operative phrase — generation depends on which provider or local model you have configured, not on a built-in generator.
Who it fits, and who it does not
| You want | PyGPT fits | Consider something else |
|---|---|---|
| One desktop app across multiple cloud providers | Yes — switch models without changing apps | A single-provider web chat if you only use one model |
| Local models for private data | Yes — Ollama integration | A cloud-only tool if you have no local hardware for it |
| Search across your own files and past chats | Yes — LlamaIndex RAG with per-project indexes | A plain chat app if you only need one-off questions |
| Run code and connect external tools | Yes — Python, MCP, scheduler | A tool with no code execution if that is a risk you want to avoid |
| Zero setup | No — you configure providers, keys, and models | A hosted assistant that works immediately |
Before you install
- Check your OS. Windows, Linux, and macOS are all listed.
- Decide cloud or local first. Cloud needs API keys from providers you already use; local needs Ollama and enough hardware to run the model you pick.
- Plan your indexes. If you work across distinct projects, set up separate project indexes from the start rather than re-indexing later.
- Treat code execution as a decision. Choose sandbox or Docker deliberately if you will run generated Python or system commands.
The source page does not list pricing tiers or payment platforms, so treat "free and open source" as describing the application itself. Costs from cloud model providers are separate and depend on your own accounts.