gptme

by Erik Bjäreholt

Your personal AI agent in the terminal, equipped with local tools to write code, use the terminal, browse the web, vision, and MCP support

See https://gptme.org | GitHub: https://github.com/ErikBjare/gptme

Features

  • 16+ integrated tools including shell, Python, browser, vision, screenshot, patch, computer use, TTS, RAG
  • Code execution: Run and debug code directly in the terminal with self-correcting output feedback loops
  • File operations: Read, modify files using incremental patch functionality
  • Web browsing: Integrated browser via Playwright for web searching and navigation
  • Vision capabilities: Process images and screenshots
  • Desktop access: GUI application interaction through computer use
  • MCP (Model Context Protocol) support for extended tool integration
  • Multiple AI providers: OpenAI, Anthropic Claude, OpenRouter, local models via llama.cpp
  • Conversation management: Auto-naming, fork, summarize, export to HTML
  • Text-to-Speech: Generate audio using Kokoro technology
  • Git integration: Pre-commit hook detection and GitHub integration
  • Web UI: Built-in interface accessible at chat.gptme.org
  • REST API: Programmatic access capabilities
  • Plugin support: Extensible architecture for custom tools

Superpowers

gptme is an unconstrained local alternative to ChatGPT with “Code Interpreter”, Cursor Agent, and similar tools. Unlike cloud-based alternatives, it’s not limited by lack of software, internet access, timeouts, or privacy concerns when using local models.

Who this is for:

  • Developers who want AI assistance directly in their terminal workflow
  • Engineers preferring local, privacy-focused AI tools
  • Data scientists needing to process and analyze data without cloud uploads
  • Anyone seeking a powerful CLI-based coding agent
  • Developers experimenting with AI agents and custom tools

What you gain:

  • Terminal-native workflow: Keep your hands on the keyboard, no context switching
  • Privacy control: Run completely locally with local models (llama.cpp)
  • Powerful automation: Natural language commands for complex shell operations
  • Self-correcting execution: Feedback loops that improve code quality automatically
  • Full tool access: No restrictions on what software or APIs you can use
  • Conversation history: Persistent sessions you can resume, fork, and export
  • Extensibility: Plugin architecture for custom tools and integrations

Use Cases

  • Write and execute code with AI assistance in real-time
  • Shell command expert: Get the right command using natural language
  • Data analysis: Process and analyze data directly in your terminal
  • Interactive learning: Experiment with new technologies hands-on
  • Automate complex tasks with natural language prompts
  • Fix failing tests and debug code
  • File conversion and media processing
  • Configuration file improvements

Example Commands

gptme 'write an impressive and colorful particle effect using three.js to particles.html'  
gptme 'render mandelbrot set to mandelbrot.png'  
gptme 'suggest improvements to my vimrc'  
gptme 'convert to h265 and adjust the volume' video.mp4  
git diff | gptme 'complete the TODOs in this diff'  
make test | gptme 'fix the failing tests'  

Available Commands

User commands for interacting with gptme:

  • /undo - Undo the last action
  • /log - Show the conversation log
  • /tools - Show available tools
  • /edit - Edit the conversation in your editor
  • /rename - Rename the conversation
  • /fork - Create a copy of the conversation with a new name
  • /summarize - Summarize the conversation
  • /replay - Re-execute codeblocks in the conversation
  • /impersonate - Impersonate the assistant
  • /tokens - Show token usage
  • /export - Export conversation as standalone HTML
  • /help - Show help message
  • /exit - Exit the program

Key Options

-m, --model TEXT        # Model: openai/gpt-4o, anthropic/claude-3-5-sonnet  
-w, --workspace TEXT    # Workspace directory path  
-r, --resume            # Load last conversation  
-y, --no-confirm        # Skip confirmation prompts  
-t, --tools TEXT        # Comma-separated tools list  

Project Statistics

  • Latest version: v0.31.0 (December 2025)
  • GitHub stars: 4.1k
  • Contributors: 23
  • License: MIT
  • Total releases: 66

Technology Stack

  • Language: Python 3.10+
  • Installation: pipx
  • Browser automation: Playwright
  • Local model support: llama.cpp
  • Code quality: mypy, ruff, pyupgrade
  • Testing: High coverage with codecov
  • Community: Discord, GitHub Discussions

Resources