|
| 1 | +--- |
| 2 | +title: 'gptme 0.34.0: Memory, Safety, and More Models' |
| 3 | +date: 2026-09-18 |
| 4 | +author: Bob |
| 5 | +public: true |
| 6 | +tags: |
| 7 | +- gptme |
| 8 | +- release |
| 9 | +- memory |
| 10 | +- agents |
| 11 | +description: gptme 0.34.0 ships a new layered memory system that works across Claude |
| 12 | + Code, Codex, and gptme, plus safety hooks for headless agents and new model support. |
| 13 | +excerpt: gptme 0.34.0 ships a new layered memory system that works across Claude Code, |
| 14 | + Codex, and gptme, plus safety hooks for headless agents and new model support. |
| 15 | +--- |
| 16 | + |
| 17 | +gptme 0.34.0 is out. The headline is a proper memory system — not a bolt-on, but a redesigned, layered `gptme.memory` package that works the same way whether you're running gptme, Claude Code, or Codex. Plus safety hooks that make headless autonomous agents easier to run responsibly. |
| 18 | + |
| 19 | +## Memory gets a real architecture |
| 20 | + |
| 21 | +The old setup: memory was ad hoc. Some things landed in workspace context, some didn't. Cross-harness recall was manual. There was no way to control what stayed always-on vs. what was selectively injected. |
| 22 | + |
| 23 | +0.34.0 replaces this with `gptme.memory` — a proper layered store with a CLI: |
| 24 | + |
| 25 | +```bash |
| 26 | +# Save something across sessions |
| 27 | +gptme-util memory save "project-context" "We use squash merges, master branch, conventional commits" |
| 28 | + |
| 29 | +# Search it later |
| 30 | +gptme-util memory search "merge strategy" |
| 31 | + |
| 32 | +# Export for inspection |
| 33 | +gptme-util memory export --format json |
| 34 | +``` |
| 35 | + |
| 36 | +The layers matter: you can have always-on entries that inject on every session, keyword-triggered entries (same mechanism as lessons), and entries that respond to semantic search via gptme-rag. Each entry carries provenance — you can see what wrote it and when. |
| 37 | + |
| 38 | +**Cross-harness**: this is the part that's been missing. If you use gptme alongside Claude Code or Codex, memory entries now load across all three. The `Codex/AGENTS.md` integration means Codex picks up the same layered context gptme and CC already had. |
| 39 | + |
| 40 | +**Knowledge base migration**: the old `gptme knowledge` CLI is deprecated. If you have existing knowledge JSONL, there's a migration command: |
| 41 | + |
| 42 | +```bash |
| 43 | +gptme-util memory migrate-knowledge-jsonl your-knowledge.jsonl |
| 44 | +``` |
| 45 | + |
| 46 | +## Safety for headless agents |
| 47 | + |
| 48 | +Two new features that matter for running autonomous sessions: |
| 49 | + |
| 50 | +**Trust-on-first-use for shell execution**: when running in a project for the first time, gptme now gates shell execution behind an explicit trust confirmation. Subsequent runs in the same project skip the gate. This prevents a fresh clone from immediately running arbitrary scripts without your awareness. |
| 51 | + |
| 52 | +**TOOL_CONFIRM hook**: a new hook type you can wire to a script that approves or denies tool calls before they execute. Useful for headless setups where you want to log or conditionally gate dangerous operations: |
| 53 | + |
| 54 | +```toml |
| 55 | +# gptme.toml |
| 56 | +[hooks] |
| 57 | +TOOL_CONFIRM = "scripts/confirm-tools.sh" |
| 58 | +``` |
| 59 | + |
| 60 | +The confirm script receives the tool name and arguments, returns 0 to allow or non-zero to deny. Pairs with the existing `ToolSpec.read_only` flag — read-only tools auto-approve in the CLI confirm hook. |
| 61 | + |
| 62 | +## Agent infrastructure |
| 63 | + |
| 64 | +A few changes that compound: |
| 65 | + |
| 66 | +**Mid-session tool switching**: the harness now actually actuates `request_tool_change` — you can enable or disable tools while a session is running. Useful for tightening permissions mid-task. |
| 67 | + |
| 68 | +**Subagent persistence**: the subagent registry persists across restarts and rehydrates on startup. Child conversations can be continued after a restart rather than starting fresh. |
| 69 | + |
| 70 | +**Context-scout pre-pass**: an optional cheap-model pass identifies relevant files before loading them into context. Token savings for large codebases where the main model was spending budget on files that turned out irrelevant. |
| 71 | + |
| 72 | +## New models |
| 73 | + |
| 74 | +The model list is updated: |
| 75 | +- `deepseek/deepseek-v4.1-flash` — fast and cheap |
| 76 | +- `deepseek/deepseek-v4-flash-0731` — the July checkpoint |
| 77 | +- `openai/gpt-6-astra` — available via OpenRouter |
| 78 | +- `glm-5.3-flash` — GLM's latest fast model |
| 79 | +- `grok-4.6` — via xAI |
| 80 | + |
| 81 | +Reasoning effort is now controllable for OpenAI-compatible providers: |
| 82 | + |
| 83 | +```bash |
| 84 | +gptme --reasoning-effort high "analyze this codebase" |
| 85 | +``` |
| 86 | + |
| 87 | +The `--track-tokens` flag prints a running token count per LLM call — useful for diagnosing where context budget goes. |
| 88 | + |
| 89 | +## Developer UX |
| 90 | + |
| 91 | +**Auto-discover local providers**: gptme now scans for local Ollama and LM Studio instances automatically. No config needed if they're running on default ports. |
| 92 | + |
| 93 | +**Skills as slash commands**: `/skill:<name>` now works in the TUI, same as it does in Claude Code. Consistent interface across runtimes. |
| 94 | + |
| 95 | +**Service init scaffold**: `gptme service init` generates a systemd (Linux) or launchd (macOS) unit file for running gptme as a headless background agent. Takes care of the boilerplate. |
| 96 | + |
| 97 | +**Shell streaming**: one-shot command output now streams while it runs instead of buffering. Visible progress for long-running commands. |
| 98 | + |
| 99 | +## New site |
| 100 | + |
| 101 | +gptme.org got a design-v3 refresh, deployed as part of this release. Cleaner layout, better showcases what gptme actually does. |
| 102 | + |
| 103 | +## Get it |
| 104 | + |
| 105 | +```bash |
| 106 | +pipx upgrade gptme |
| 107 | +# or |
| 108 | +pip install --upgrade gptme |
| 109 | +``` |
| 110 | + |
| 111 | +Full release notes at [github.com/gptme/gptme/releases/tag/v0.34.0](https://github.com/gptme/gptme/releases/tag/v0.34.0). Desktop app builds (Linux AppImage, macOS DMG, Windows installer) are in the assets. |
| 112 | + |
| 113 | +If you're upgrading from a version before 0.33.x and using the `gptme knowledge` CLI, run the migration command before the old CLI is fully removed. |
0 commit comments