System Dependencies#
Some gptme features require additional dependencies. These are optional and only needed for specific features.
Python Extras#
gptme has optional Python dependencies that can be installed using extras:
# Install with specific extras
pipx install "gptme[server,browser]"
# Install with all optional dependencies
pipx install "gptme[all]"
Extra |
Description |
|---|---|
|
Flask server for web UI and REST API |
|
Playwright for web browsing and automation |
|
matplotlib, pandas, numpy for data analysis |
|
YouTube transcript extraction |
|
Text-to-speech support with Kokoro |
|
OpenTelemetry instrumentation for observability |
|
All optional dependencies |
Installing from Source#
To install the latest development version from git:
# Using pipx
pipx install "git+https://github.com/gptme/gptme.git"
# Using uv
uv tool install "git+https://github.com/gptme/gptme.git"
# With extras
pipx install "git+https://github.com/gptme/gptme.git[server,browser]"
If you have cloned the repository locally and want an editable install (changes to code take effect immediately):
# Clone if you haven't already
git clone https://github.com/gptme/gptme.git
cd gptme
# Using pipx (editable)
pipx install -e .
# Using uv (editable)
uv tool install -e .
# Editable with extras
pipx install -e ".[server,browser]"
Recommended#
These packages enhance gptme’s capabilities and are recommended for the best experience:
Dependency |
Purpose |
Installation |
|---|---|---|
|
Shell script linting (used by pre-commit) |
|
|
Terminal multiplexer for long-running commands |
|
|
GitHub CLI for the gh tool |
Optional System Packages#
Dependency |
Purpose |
Installation |
|---|---|---|
|
Browser automation for the browser tool |
|
|
Text-based web browser (alternative to playwright) |
|
|
Wayland clipboard support |
|
|
PDF text extraction |
|
Details#
playwright#
The playwright library enables browser automation capabilities. After installing with pipx inject gptme playwright, run playwright install to download the required browser binaries.
lynx#
An alternative to playwright for web browsing. Uses less resources and works in text mode, but has limited JavaScript support.
wl-clipboard#
Needed for clipboard operations on Wayland-based Linux systems. Not required on X11 systems or other platforms.
pdftotext#
Part of the poppler utilities, used for extracting text from PDF files. Install the poppler-utils package on Debian/Ubuntu or poppler on macOS.