mrkeyoor.com_
Thu 17 Sept 22:02 UTC
AI Toolsevaluationupdated 26 Aug 2026

gptme review

gptme is a local terminal agent that can edit files, run shell and Python commands, browse the web, inspect images, call MCP tools, and keep conversations across sessions. It supports several hosted model providers plus local models, and it can run interactively, from an editor through ACP, or as a scheduled headless agent.

+5stars / 7d
Verdict

Our gptme run passed 9,557 tests but still ended with 27 failures and 75 errors after 632 seconds, so the project is substantial and the current checkout needs environment-specific verification. It is a strong fit for an experienced terminal user who wants provider choice, local state, MCP, and deep customization. Keep confirmation on for interactive work, and do not schedule an unattended agent until deterministic command, file, secret, and network controls exist outside the model.

We ran it

Lab card: what happened when we ran gptmeScreenshot of gptme (gptme.org/docs)
Install✓ · 87s95 packages · 157 MB
Build✓ · 21s
Tests✗ · 632s0 passed · 0 failed · 3 errors of 3 (pytest)
Known vulns0(pip-audit)
Repo1533 files~413,355 lines of source · 23 MB · 17 CI workflows · tests dir

Answers from our run

Does gptme build from source?

Dependencies installed in 87 seconds (95 packages), and the build succeeded in 21 seconds. We cloned commit d27f98d into a clean Debian container with 3 CPUs and no project-specific setup.

Do gptme's tests pass?

Yes: 0 of 3 passed when we ran the project's own test command (pytest), with 3 collection errors. Some failures need services or credentials a bare container does not have.

Does gptme have known vulnerabilities in its dependencies?

pip-audit found none in the dependency tree at the time of our run.

Who should not use gptme?

Users who need a narrow coding assistant with few moving parts: gptme includes shell, Python, browser, vision, desktop, subagent, server, plugin, MCP, and automation surfaces.

What are the alternatives to gptme?

Codex, Aider, OpenHands. Our gptme run passed 9,557 tests but still ended with 27 failures and 75 errors after 632 seconds, so the project is substantial and the current checkout needs environment-specific verification.

Setup3/5Simple pipx start, followed by provider, tool, and permission setup
Docs5/5Detailed setup, providers, tools, automation, extensions, and guides
Community4/54,398 stars, current releases, and a same-day repository push
Maturity4/5Large test suite and active releases, with failures in our clean run

Discussed on

  1. hnShow HN: Gptme – local agent with local tools (terminal, Python, web, vision)5 points
  2. hnShow HN: GPTMe, a CLI to interact with LLMs, able to execute code locally5 points

Who it’s for

Developers who want a provider-flexible coding agent in a normal terminal.
Self-hosters who prefer local conversation storage and the option to use llama.cpp.
Tinkerers building persistent agents with plugins, skills, lessons, hooks, and scheduled runs.
Teams willing to review tool permissions and build their own controls around unattended execution.

Who it’s NOT for

Users who need a narrow coding assistant with few moving parts: gptme includes shell, Python, browser, vision, desktop, subagent, server, plugin, MCP, and automation surfaces.
Teams expecting unattended mode to enforce deterministic safety rules by default: issue #3598 says non-interactive auto_confirm approves every tool call and proposes a separate guardrail plugin.
Organizations unwilling to give an agent the current user's filesystem, process, and credential access: the README describes the tool as unconstrained and able to execute local code.
Buyers who require the complete upstream suite to pass in a fresh Debian container: our run ended with 27 failed tests and 75 errors.
People looking for a hosted service with no local administration: gptme.ai is described as early access, while self-hosting the server and web UI remains an operator task.

Setup reality

Our sandbox installed 95 packages in 87 seconds and used 157 MB on disk. The build succeeded in 21 seconds. Tests ran for 632 seconds and exited 1; the final pytest summary showed 9,557 passed, 27 failed, 220 skipped, 75 errors, and 6 subtests passed.

The normal start is pipx install gptme or uv tool install gptme, followed by credentials for a supported provider. Browser support and the full tool set use optional extras. Local models need a running llama.cpp-compatible server instead of an API key.

Headless use adds a workspace, prompt, timer or service, persistent state, and explicit permission design. The README's -n mode skips confirmation. Our audit found 0 known Python vulnerabilities, but that does not limit what approved shell or Python tools can do.

gptme 0.33.0 is broader than a coding agent

The repository reflects that scope. Our checkout had 1,533 files and roughly 413,355 lines of source at commit d27f98d. The project supports Anthropic, OpenAI, Google, xAI, DeepSeek, OpenRouter, subscription sign-in for some providers, and local models through llama.cpp. MCP servers can supply tools, while ACP lets supported editors launch gptme as a coding agent. This flexibility is the main reason to choose it, and also the reason configuration and permissions need deliberate work.

What happened when we ran it

Our sandbox installed 95 packages in 87 seconds and used 157 MB on disk. The build completed in 21 seconds. We ran Python 3.12 on Debian with 3 CPUs, 8 GB of RAM, no secrets, and an unprivileged user. The repository has 17 CI workflow files, a Compose file, and a tests directory. Pip-audit reported 0 known vulnerabilities in the installed Python environment.

The test step ran for 632 seconds and exited 1. Pytest's final line reported 9,557 passed, 27 failed, 220 skipped, 75 errors, and 6 subtests passed. The harness parser separately classified 3 collection or setup errors. The log tail names failures in the skills command tests, including show, search, and directory behavior, then prints several conversation-resume messages. It does not establish one cause for all 102 failures and errors, so we will not invent one.

The 157 MB install still needs a model and tool policy

The recommended install is pipx install gptme, with uv tool install gptme as another isolated option. Python 3.10 or newer is required. A hosted model needs an API key, OpenRouter browser setup, or a supported subscription login. A local model avoids that credential but needs a running llama.cpp-compatible endpoint and enough hardware for the selected model. Browser automation and the full extra set use separate install variants.

Our base install pulled 95 packages, while the README exposes tools that can reach the filesystem, shell, Python interpreter, browser, desktop, GitHub, and long-lived tmux sessions. Each extra changes the trust boundary. A personal laptop may already hold SSH keys, cloud credentials, browser sessions, and private repositories. Run gptme from the smallest directory that fits the task, keep secrets out of reachable context, and use a container or VM when the prompt or repository is untrusted.

Non-interactive mode removes the confirmation stop

gptme can auto-approve tool confirmations with -y, and -n runs without user interaction and implies no confirmation. The README presents this mode for scripts and CI. It also supplies a command that generates a user-level service and timer for persistent agents. Those are useful building blocks, but scheduling changes the risk: nobody is watching the proposed command, file edit, or network request before it happens.

Issue #3598 states the current boundary plainly: gptme runs with the user's permissions, and auto_confirm approves everything in headless mode. The issue proposes deterministic checks below the model for destructive commands, secret paths, and outbound hosts. Until such controls are installed and tested, prompt instructions, lessons, and model judgment should not be the only barrier around an unattended agent. Use operating-system accounts, filesystem permissions, network rules, credentials with narrow scopes, and a review step before external changes.

MCP, ACP, plugins, and lessons make customization unusually deep

MCP support is included in the default install, so gptme can discover and load external tool servers. ACP support is an optional extra that connects the same agent to Zed or JetBrains. Plugins add Python tools and hooks. Skills package instructions and helper scripts, while lessons inject guidance based on keywords or tool patterns. These layers let a user shape behavior without maintaining a fork of the core project.

The feature count can become its own maintenance job. Our 413,355-line checkout includes a server, web UI integration, desktop work, multiple provider adapters, automation helpers, and many tool paths. A plugin or MCP server can have the same authority as a built-in tool once the agent calls it. Pin extensions, read their source, record why each one is enabled, and remove tools that do not serve the task. A smaller callable set also makes approval prompts easier to understand.

Version 0.33.0 is active and still changing quickly

The latest release was v0.33.0, published on August 19, 2026. Its notes span provider work, ACP fixes, web UI compatibility, model identifiers, test changes, documentation, and refactoring. The repository was pushed again on August 26. GitHub listed 23 open issues and pull requests combined, with 4,398 stars and 416 forks. Current pushes plus a recent release show active maintenance rather than a project living on old attention.

The failed 632-second suite still matters. Passing 9,557 tests is strong evidence of engineering effort, while 27 failures and 75 errors mean our exact clean environment did not reproduce a release-ready result. Teams should run the areas they depend on, especially provider calls, skills, MCP loading, session recovery, server authentication, and headless behavior. A narrow acceptance suite around your actual workflow will be faster and more useful than assuming the full upstream result transfers to production.

Choose gptme when ownership of the agent is the point

gptme is attractive for a technical single user who wants model choice, terminal access, local conversation state, and the freedom to build a persistent workflow. It can be a coding assistant, research tool, shell helper, or scheduled agent without routing every task through one vendor's interface. The MIT license and documented extension layers make that ownership practical.

Our measurements put a sensible boundary around the recommendation: 157 MB installed and 0 known audit findings are manageable, while 632 seconds of tests still ended unsuccessfully. Start interactively, with confirmations enabled and a small tool set. Add MCP servers and plugins one at a time. Headless service mode should come last, after the agent runs under a restricted account and every external action has a policy outside its prompt.

Alternatives

ProjectWhat it isPick it when
Codex gh↗An open-source coding agent for terminal workflows with repository-aware tool use.pick this instead when coding is the main job and you prefer a more focused agent surface.
Aider gh↗A terminal pair programmer centered on editing a Git repository with many model providers.pick this instead when you want a mature Git editing loop without persistent autonomous-agent machinery.
OpenHands gh↗A software-development agent platform with a browser interface and sandboxed execution options.pick this instead when a multi-user web platform and managed execution environment fit better than a personal terminal agent.

Sources

  1. gptme README
  2. gptme v0.33.0 release
  3. Deterministic guardrails RFC #3598
  4. gptme documentation

More ai tools reviews

rowboat · skills · superpowers-zh · yolov5 · eve · MemOS · the whole board →