Model or dataset
szczyglis-dev/py-gpt avatar
szczyglis-dev/py-gpt

PyGPT: Open-Source Desktop AI Assistant for Linux, Windows, and macOS

Desktop AI Assistant powered by GPT-5, GPT-4, o1, o3, Gemini, Claude, Ollama, DeepSeek, Perplexity, Grok, Bielik, chat, vision, voice, RAG, image and video generation, agents, tools, MCP, plugins, speech synthesis and recognition, web search, memory, presets, assistants,and more. Linux, Windows, Mac

1,945 stars346 forksPythonNOASSERTION

At a glance

What is it?
PyGPT is a desktop AI assistant written in Python that runs on Linux, Windows, and macOS, supporting models from OpenAI, Google Gemini, Anthropic Claude, xAI Grok, DeepSeek, Perplexity, and local Ollama installations, with agents, RAG, vision, voice, image and video generation, MCP, and a plugin system.
Who is it for?
Developers, researchers, and technically oriented users who want a single desktop application spanning multiple LLM providers with local model support, RAG over their own files, MCP connectivity, agents, voice, and computer use capabilities will find PyGPT comprehensive to a degree that no single-provider client matches. The configuration surface is large: the README documents dozens of features, work modes, and plugin integrations.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository last received commits 5 days ago.
What is it written in?
Mainly Python, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on September 25, 2026, and from our analysis. They are not legal advice.

Editorial analysis

What PyGPT Is and Who It Serves

PyGPT is a local desktop application that provides a conversational AI interface across a wide range of model providers. It does not bundle any API access of its own. Users bring their own credentials for each provider they want to use: OpenAI, Anthropic, Google, xAI, DeepSeek, Perplexity, HuggingFace, and others. Local models served through Ollama require no external API key.

The application runs on Linux, Windows, and macOS and is written in Python. The README positions it as an alternative to browser-based AI interfaces, with the local application model giving users persistent conversation history, file management, and automation capabilities that web interfaces do not provide. The target audience is anyone who uses AI models regularly and wants a configurable, locally running environment rather than a series of browser tabs.

Provider Coverage and Model Support

PyGPT's model support is broad. The README lists OpenAI models including GPT-6 Astra, GPT-5.6, and GPT-4; Google Gemini; Anthropic Claude; xAI Grok; DeepSeek V3 and R1; Perplexity/Sonar; and models available through HuggingFace, LlamaIndex, and Ollama local installations (DeepSeek, Qwen, gpt-oss, Gemma, Mistral, Llama, and others). The pyproject.toml lists anthropic, google-genai, and several Azure, Bedrock, and Vertex AI dependencies, confirming the breadth of provider integration.

Work modes extend beyond a standard chat interface: Agents, Realtime audio, Research, Completion, Image generation, Video generation, Computer use, Experts, Autonomous mode, and a Custom agent builder are all separate modes. The image generation support includes gpt-image, Imagen, Gemini, and Nano Banana models. Video generation uses Veo3 and Sora2. Speech synthesis draws from OpenAI, Microsoft Azure, Google Cloud/GenAI, Eleven Labs, and xAI, while speech recognition uses OpenAI Whisper (API or local), Google, Microsoft Bing, and xAI Grok Voice.

Installing PyGPT on Linux, Windows, and macOS

The recommended installation method depends on the platform. For Linux, the Snap Store is the lowest-friction option:

commandline
sudo snap install pygpt

To update an existing snap installation:

commandline
sudo snap refresh pygpt

Some features require connecting optional snap interfaces after installation. For camera support:

commandline
sudo snap connect pygpt:camera

For Linux users who prefer the AppImage format, the latest release is available from the GitHub Releases page. Make it executable before the first run:

bash
chmod +x ./PyGPT-X.X.X-x86_64.AppImage

For Windows, the README offers an MSI installer for Windows 10 and 11, a Microsoft Store listing, and prebuilt 64-bit binaries from pygpt.net. For macOS, the README directs users to the PyPI or source installation path. The current release is 2.8.33, built on 2026-09-27.

RAG, MCP, Plugins, and Agents

PyGPT includes LlamaIndex-based RAG for files, webpages, Google and GitHub data, and media. The supported formats include txt, pdf, csv, html, md, docx, json, epub, xlsx, and xml. The vector store handles automatic embedding of files and database context, with ChromaDB listed as the vector store dependency in pyproject.toml.

Model Context Protocol support is built in. PyGPT ships a built-in MCP Connectors manager that can import connector configurations from Claude Desktop, Codex, OpenClaw, Cursor, VS Code, OpenCode, MCPorter, and generic JSON, TOML, or YAML configuration files. This means existing MCP configurations from other tools can be imported without manual re-entry.

The plugin system extends the application with file I/O, a Python interpreter, web search (DuckDuckGo, Google, Microsoft Bing), Google services, Slack, Telegram, GitHub, Facebook, and X/Twitter. The agent capabilities cover multi-agent workflows using Chat, Orchestrator, and Swarm runtimes. The README also describes a portable SKILL.md-based Agent Skills system with GitHub and local import, per-profile enable and disable, and on-demand loading.

Computer Use, Vision, and Voice

PyGPT includes a Computer use mode that allows models to interact with the desktop or browser when enabled. Vision-capable models can process images and camera input. The built-in camera capture provides real-time image input for modes that support it.

Voice is integrated on both input and output sides. Speech input uses OpenAI Whisper in API or local mode alongside Google and Microsoft Bing recognition. Speech output is handled by OpenAI, Azure, Google Cloud, Eleven Labs, and xAI. The keyboard shortcuts and voice control features are described under accessibility features in the README.

The built-in Canvas provides a real-time workspace with annotation support and a web browser integration for interactive workflows. The Python/OS tool allows real-time Python, IPython, and system command execution from within the application, and a crontab-based task scheduler runs commands on a defined schedule. PyGPT also includes a built-in painter, a notepad, and a calendar with day notes.

Limitations and Scope Boundaries

PyGPT requires users to supply their own API credentials for every cloud provider they use. The README states this plainly: cloud providers use the user's own API credentials. The application is a desktop client for those services, not a proxy or reseller. Users who are not comfortable managing API keys from multiple providers will find the setup burden significant.

The pyproject.toml dependency list is very long. The requirements.txt file stretches to hundreds of packages including chromadb, LlamaIndex components, boto3, huggingface-hub, multiple Azure and Google SDK packages, browser automation libraries, and audio processing libraries. This means install time and disk footprint are substantial compared to a single-provider client. The prebuilt binaries and Snap package hide this complexity for most users, but source installations expose it.

PyGPT does not run as a server or headless daemon. It is a desktop GUI application. Teams that need API access to LLM functionality, or that want to run model access in a cloud environment, need a different tool.

Maintenance and Licence

PyGPT is under active development. The last push was on 2026-09-24, and three releases were published in four days: v2.8.33 on 2026-09-27, v2.8.32 on 2026-09-26, and v2.8.31 on 2026-09-24. The release cadence is rapid.

The pyproject.toml lists the licence as MIT. Despite the NOASSERTION value in the repository metadata, the actual licence file and pyproject.toml both indicate MIT. The application supports donations through Buy Me A Coffee, GitHub Sponsors, and PayPal, reflecting that it is maintained by an individual developer.

Extensions to the plugin and LLM system are documented in the examples/ directory, which contains example_agent.py, example_plugin.py, example_llm.py, example_tool.py, and example_vector_store.py, among others. These provide starting points for users who want to add custom providers or extend the existing plugin system.

Editorial conclusion

Developers, researchers, and technically oriented users who want a single desktop application spanning multiple LLM providers with local model support, RAG over their own files, MCP connectivity, agents, voice, and computer use capabilities will find PyGPT comprehensive to a degree that no single-provider client matches. The configuration surface is large: the README documents dozens of features, work modes, and plugin integrations. Users who need only a simple chat interface with one provider will find PyGPT's scope excessive. The snap install is the lowest-friction path on Linux; check that the optional snap interfaces are connected for camera and microphone access before first use.

Frequently asked questions

How do you install PyGPT on Linux?

The easiest path is the Snap Store: run sudo snap install pygpt. Optional snap interfaces for camera (pygpt:camera) and microphone (pygpt:audio-record) must be connected separately for those features. AppImage and prebuilt binary options are also available from the GitHub Releases page.

Does PyGPT support local models through Ollama?

Yes. PyGPT supports models served through a local Ollama installation, including DeepSeek, Qwen, gpt-oss, Gemma, Mistral, and Llama. Local models through Ollama do not require an external API key.

Can PyGPT import MCP server configurations from other tools?

Yes. The built-in MCP Connectors manager can import configurations from Claude Desktop, Codex, Cursor, VS Code, OpenCode, MCPorter, and generic JSON, TOML, or YAML files. This allows reuse of existing MCP server setups without manual re-entry.

Official sources

  1. Issues
  2. Project website
  3. README
  4. Releases
  5. szczyglis-dev/py-gpt on GitHub
Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/szczyglis-dev-py-gpt.svg)](https://hysenlabs.com/projects/szczyglis-dev-py-gpt)