v0.27.0#
These are the release notes for gptme version v0.27.0.
Contributors#
Thanks to everyone who contributed to this release:
@0xbrayo, @erikbjare, @jrmi, @Miyou
Changelog#
Changes since v0.26.0:
📦 gptme#
✨ Features (19)#
feat: added GPTME_CONTEXT_TREE which includes
tree --gitignore .output in initial prompt (#461) (593ee900)feat(style): print
<think>/<thinking>in dimmed text (dfab1e05)feat: added basic files support to server API (#440) (
24b9dc95)feat: added script to auto-rename past conversations (#439) (
9a9f0114)feat: much improved RAG, added LLM post-processing of results (#435) (
f4b6f02e)feat: add status emojis to system messages (#429) (
69c5f011)feat: added support for nvidia provider (
7f387d33)feat: auto-enable pre-commit checks when config exists (#430) (
5cd9b1e8)feat: enhance vision tool with better image processing (
6a982987)feat(computer): add macOS support for computer tool (#324) (
7a08e341)feat: added support for GPTME_BREAK_ON_TOOLUSE flag to not stop generation when tooluse occurs in stream (
e7021b9c)feat: auto-run precommit checks when tooluse exhausted (#415) (
254d1b61)feat: added /model command to list/switch models, support mixing providers (#409) (
a2bc4e00)feat: add env var feature flag for llm prompt suggestions (
978b1c4b)
🐛 Fixes (65)#
Click to expand
fix: fixed reduce_context script (
2f8246c6)fix: added reduce_context.py script (
f0edadde)fix: added gh-pr-view-with-pr-comments.sh script (
3e0dd23d)fix: add gemini-2.0-flash-thinking-exp-01-21 to models (#465) (
489f73e6)fix: fixed incorrect reference to GPTME_FRESH_CONTEXT (now just GPTME_FRESH) (
ce626ed1)fix: fix circular import (
417613c1)fix: correctly handle too long path names (
ec1118c6)fix: dont expand paths in user commands for tools, like /shell (#453) (
96304695)fix: fixed a bunch of get_default_model uses, return None instead of exception if unset (
a3626c82)fix: make model fully optional in prompts.py, no fallback to possibly unset default (
29a0cb19)fix: correct content block processing in Anthropic LLM module (
b4d2d962)fix(anthropic): use model_meta.supports_reasoning to determine wether to use thinking (
91af56c1)fix: add supports_reasoning to model_meta, disabling
<thinking>prompting for such models (b15fb6a5)fix(anthropic): set max_tokens from model metadata (
a89ca157)fix: refactor only-once warning of unknown model metadata (
5d5f0e95)fix: disabled
tooltooluse format for Sonnet 3.7 with thinking, for now (4354f3e7)fix: only log missing model metadata warning once (
ffb83789)fix: added model metadata for sonnet 3.7 (
1df392ac)fix: add support for sonnet 3.7 (
cb83725c)fix: add
modelparameter tostepfunction (dont rely on global) (ebc076bb)fix: refactored get_project_dir helper function (
d231311e)fix: prompt to prefer absolute paths (
ba11552a)fix: fixes after RAG improvement PR (
486d9858)fix: refactor workspace initialization (
6936a4e1)fix: fix support for explicitly disabling pre-commit checks (
603ecaae)fix: added basic
gptme-util chats searchcommand, fixes togptme-util chatsoverall (#434) (b9a64578)fix: adjust tts speed to 1.0 by default after tts_server.py updated to kokoro 1.0 which seems faster by default (
6e3af447)fix: upgrade tts_server.py to use kokoro 1.0, fix audio output device on linux (#432) (
007a0750)fix: improved status emojis in formatted messages (
964b5280)fix: automatically clone Kokoro-82M repo in tts_server.py script (
a6109c71)fix: fixed support for o3 (
3a810109)fix: log reasoning_content when available (i.e. Deepseek R1) (
e13af3f3)fix: added support for GPTME_PATCH_RECOVERY where file is returned in error for non-matching patches (
96ceec24)fix: minor improvements to ipython function description formatting (
7d2fec38)fix: auto-step in server (wip), dont use logmanager lock in API (
c948e3b1)fix: improve formatting for large patch warnings (
4ad126e3)fix: handle None workspace in get_project_config to prevent TypeError (
d0fee8a6)fix: minor logging improvements (
48782fcd)fix(screenshot): add prompting for screenshot permissions on macos (
3bc328ea)fix(vision): rescale large images passed to view_image (
1a1d969c)fix(tts): fix logging output in tts server (
060b5d09)fix(tts): added GPTME_VOICE_FINISH flag to wait for speech to finish before exiting (
95042d40)fix(tts): combine short sentences into larger chunks before sending to tts server (
d6a941ea)fix(tts): make tts server requests non-blocking, improve clean_for_speech (#422) (
44c3dfe9)fix: improve pre-commit output message when files automatically fixed by hook (
9b4e9117)fix: added support for knowledge cutoff in model metadata (
d166b4cb)fix(eval): use seperate status emoji for timeouts (
00fdd187)fix: locate espeak library more intelligently on macOS (
583a6b43)fix: strip leading/trailing silence from tts output (#420) (
96c54c41)fix: fix call_id regex format for deepseek (
ec30e9b0)fix: enable
toolformat for deepseek provider (7fda8bdc)fix: fixed summarization for openrouter and deepseek (
d8a9bec6)fix: added TODOs for better openrouter support (
e56491f1)fix: fixed output of codeblocks with unescaped rich [style] tags (
07ed85fd)fix: detect tooluses with common path characters when cleaning for speech (#412) (
9124640b)fix: improve default models+toolformats to run in evals (autodetect from available keys) (
598f4096)fix: fixed broken openrouter support due to missing entry in model metadata (
0cd60a08)fix: added gptme-eval-docker.sh helper script (
9e62c3d1)fix: broken mixed tool formats execution while using
toolformat (#407) (bcf45cd5)fix: improved logging output for gptme-rag calls (incl time taken) (
33db67ec)fix: cleaned up tts tool, detect if tts server isnt running (#404) (
d27da5e0)
🔨 Misc (42)#
Click to expand
chore: bump version to 0.27.0 (
96a5b54e)docs: replaced github.com/ErikBjare/gptme links with github.com/gptme/gptme (
6ac6f6e7)docs: reference both usage and examples in getting-started guide (
1bd6a607)docs: fixed link (
bb1c3f3f)docs: link to bob from README (
2349c046)refactor: make computer tool share logic with screenshot tool (#442) (
412bace5)docs: mention Claude Code in alternatives (
05648fb4)refactor: refactored include_paths in chat.py by moving in and helpers into gptme.util.context (
f008b6a9)docs: update the evals page to mention recommended model (sonnet) and available evals (#451) (
92965cd1)refactor: extract get_default_model_summary (
161451e1)docs: fixed broken document_prompt_function (
004ced9e)refactor: separate all get_default_model logic from get_model (
5e3aa80a)tests: uncomment test and mark to skip instead (
40dc44c1)tests: disable broken search_ddg test (
4a241f4c)refactor: refactored retry_(generator_)on_overloaded (almost-duplicate decorator) (
e64006cc)docs: add OpenHands to alternatives (
1edf80d9)docs: split sections from ‘dev guide’ into new ‘about’ toctree in index (
8845a1a6)chore: updated gitignore (
2bdad1a7)docs: improved lead in README (
d07e799c)docs: improved tools page (
dae30218)docs: updated page with alternatives/comparison (
5d53aa42)test: fixed conversation search test (
8dfc3a06)refactor: move default rag post-process prompt from config.py into tools/rag.py (
0b9ea550)docs: fixes to config docs (
2b11a3c7)test: add requires_api test mark to run tests without API keys (such as for untrusted PRs) (#433) (
19895aa8)docs: improve documentation and code style (
8c536f17)docs: improve TTS documentation and update README (
00198a35)docs: added complexity metrics with radon to arewetiny docs, as makefile target (#428) (
0bd43f3e)docs: fix RST formatting in config.rst (
2059dddf)docs: document potential DeepSeek/Gemini reasoning content support (
ab780b99)style: add newline between patch success message and warnings (
8698758b)style: improve readability of base_prompt assignment (
79df878a)refactor: improve imports and error handling in cli.py (
de764dac)docs: document environment variables and feature flags (
693b3be0)chore: added config.toml to gitignore (
456d9661)chore: added config.toml to gitignore (
87d23cfa)tests: fixed tests for splitting/chunking sentences in tts (
af0d3588)test: generate unique run name for retries (
6ff8b94b)test: fixed test expecting ‘Cost’ which isn’t known for some models (
db212bd7)test: fixed missing argument in test (
0dbcf09e)test: disabled test_search_google since its failing, improved error logging for failed searches with playwright (
51f54e9a)chore: updated contributor cache (
719da49f)
(excluded 9 less relevant commits)
Full Changelog: https://github.com/gptme/gptme/compare/v0.26.0…v0.27.0