Releases: SkogBackup/gptme
Releases · SkogBackup/gptme
v0.28.3.dev20260423
v0.28.3.dev20260423
These are the release notes for gptme version v0.28.3.dev20260423.
Contributors
Thanks to everyone who contributed to this release:
@0xbrayo, @ErikBjare, @FilipHarald, @Miyou, @sebastiondev, @Skogix, @the-eater, @TimeToBuildBob
Changelog
Changes since v0.28.3.dev20260416:
📦 gptme
✨ Features (342)
- feat(agent): add live agent scan alias (#2205) (
18be555c) - feat(webui): wire ServerDefaultModelSettings to GET /api/v2/user/settings (#2204) (
9cb296e1) - feat(server): add GET /api/v2/user/settings for provider+model introspection (#2203) (
7633bc1d) - feat(onboarding): add shared default-model selection flow (#2201) (
91a580f0) - feat(tauri): in-app API key entry (save_api_key + wizard UI) (#2195) (
02fb26b2) - feat(hooks): track memory_mb for detected agents in workspace_agents (#2200) (
b0b8fd09) - feat(cli): add gptme-util agents scan command (#2198) (
19422518) - feat(tauri): desktop/mobile split — gate sidecar behind cfg(desktop) (#2191) (
64a84c77) - feat(tauri): surface provider_configured in /api/v2 + SetupWizard onboarding step (#2194) (
0ace7968) - feat(anthropic): wire output_config.effort for true xhigh/max thinking semantics (#2186) (
a9f22463) - feat(prompts): add cache boundary marker and stable file order (#2185) (
e33fec13) - feat(anthropic): add GPTME_THINKING_EFFORT env var with named levels (#2184) (
6f7e3084) - feat(prompts): propagate model to prompt_short for tool-use enforcement (#2181) (
ff626be5) - feat(prompts): inject tool-use enforcement for GPT/Gemini/Grok families (#2180) (
2cd8ee8b) - feat(util): add models test command for verifying model connectivity (#2159) (
bf64c679) - feat(chats): expose context/matches options in search and read commands (#2155) (
53a00009) - feat(models): add claude-opus-4-7 and anthropic/claude-opus-4.7 (OpenRouter) (#2153) (
bc4f2aa8) - feat(server): add include_archived parameter to list_tasks API (#2127) (
18272416) - feat(eval): add implement-memoization behavioral scenario (31st) (#2114) (
e23bd968) - feat(eval): add implement-priority-queue behavioral scenario (33rd) (#2113) (
5fedad71) - feat(eval): add implement-event-emitter behavioral scenario (30th) (#2105) (
48a43722) - feat(eval): add implement-lru-cache behavioral scenario (29th) (#2103) (
b504ddbc) - feat(eval): add circuit-breaker behavioral scenario (28th) (#2100) (
5806f345) - feat(eval): add circuit-breaker behavioral scenario (26th) (#2099) (
8bb769ea) - feat(eval): add rate-limiting behavioral scenario (28th) (
6fa5d440) - feat(eval): add add-docstrings behavioral scenario (24th scenario) (#2093) (
833a00c3) - feat(eval): add validate-user-input behavioral scenario (27th scenario) (#2096) (
dc5cea42) - feat(eval): add retry-with-backoff behavioral scenario (26th scenario) (#2095) (
fe0bcd6e) - feat(eval): add add-deprecation-warning behavioral scenario (25th scenario) (#2094) (
b521a3db) - feat(eval): add fix-mutable-default behavioral scenario (22nd scenario) (#2091) (
1da36d5c) - feat(eval): add remove-dead-code behavioral scenario (21st scenario) (#2090) (
df563ea4) - feat(eval): add optimize-n-squared behavioral scenario (20th scenario) (#2088) (
83b2f542) - feat(eval): add fix-data-mutation behavioral scenario (19th scenario) (#2083) (
f4288d80) - feat(eval): add noisy-worktree-fix behavioral scenario (18th scenario) (#2080) (
f51c7a9c) - feat(eval): add add-type-hints behavioral scenario (17th scenario) (#2079) (
40451181) - feat(eval): add refactor-for-testability behavioral scenario (16th scenario) (#2078) (
3db6116c) - feat(eval): add fix-security-path-traversal behavioral scenario (15th scenario) (#2077) (
82e1d2fe) - feat(eval): add handle-specific-exception behavioral scenario (14th scenario) (#2076) (
2c4bc5a2) - feat(eval): add add-feature-preserve-default behavioral scenario (13th scenario) (#2074) (
5ad69729) - feat(eval): add use-existing-helper behavioral scenario (12th scenario) (#2073) (
049cd9c0) - feat(eval): add add-logging behavioral scenario (11th scenario) (#2072) (
e389c0ce) - feat(webui): polish message styling and fix avatar chaining (#1996) (
bab29402) - feat(eval): add scope-discipline-bugfix behavioral scenario (10th scenario) (#2069) (
24272fac) - feat(server): add CLI-based fallback for external session provider (#2067) (
89db2d05) - feat(lessons): add GPTME_LESSONS_EXTRA_DIRS env var (#2066) (
587acf93) - feat(eval): add debug-data-pipeline behavioral scenario (9th scenario) (#2064) (
60828f86) - feat(webui): add external sessions catalog view (#2062) (
29c51729) - feat(server): add read-only external session catalog (#2059) (
dbf83cd6) - feat(cli): prototype live terminal status line (#2058) (
8f12aa2c) - feat(eval): add write-test-suite and test-driven-error-handling behavioral scenarios (#2053) (
19f0f01e) - feat(eval): add merge-conflict and extract-function behavioral scenarios (#2052) (
1a960762) - feat(eval): add stage-new-files behavioral scenario (#2049) ([
a4904c6b](https://github.com/gptme...
v0.28.3.dev20260416
v0.28.3.dev20260416
These are the release notes for gptme version v0.28.3.dev20260416.
Contributors
Thanks to everyone who contributed to this release:
@0xbrayo, @ErikBjare, @nikongo, @Skogix, @TimeToBuildBob
Changelog
Changes since v0.28.2:
📦 gptme
✨ Features (129)
- feat(mcp): add MCP prompts support (#1141) (
1e585bbf) - feat(mcp): add MCP resources support (#1109) (
6d3bd2be) - feat: add URI support in Message.files for URLs and MCP resources (#1118) (
34c6afef) - feat(browser): add PDF support using pypdf (#1120) (
2c5086dc) - feat(anthropic): add web search block handling (#1122) (
8c403ab3) - feat(anthropic): add native web search support (#723) (
dda13a54) - feat(prompts): add skills summary to system prompt (#1107) (
f65b0b5b) - feat(gh): truncate verbose comment bodies to reduce token usage (#1103) (
fcfe48aa) - feat(gh): include comment IDs in PR review output (#1101) (
5a1850b3) - feat(lessons): add wildcard and regex pattern support for keyword matching (#1093) (
12dae0b8) - feat(server): add GPTME_DEBUG_ERRORS for verbose error messages in dev mode (#1096) (
e9bba532) - feat(hooks): add cache_awareness hook for centralized cache state tracking (#1074) (
88c38de3) - feat(llm): add retry logic for OpenAI API transient errors (#1067) (
91811070) - feat(hooks): add CACHE_INVALIDATED hook type for cache-aware plugins (#1070) (
04b9f694) - feat(autocompact): add semantic patterns for value-aware retention (#1061) (
34369e20) - feat: add session cost summary on exit (#1037) (
856617ad) - feat(lessons): deduplicate lessons by resolved path to handle symlinks (#1026) (
1a570112) - feat(autocompact): add Master Context Architecture for byte-range recovery (#1020) (
c82701c7) - feat(commands): add /skills command for browsing skills and lessons (#1014) (
ddec8716) - feat(codeblock): support quad+ backticks for nested markdown (Issue #1005) (#1009) (
fe24f45c) - feat: add extensible command argument completion system (#1010) (
ce912dae) - feat(subagent): add structured delegation template for clear task handoff (#997) (
aea670e9) - feat(skills): add codebase classification skill (
56a9d442) - feat(lessons): support Anthropic SKILL.md format matching (#1001) (
e63c9806) - feat(complete): add todo-based continuation enforcer (#996) (
739691bf) - feat: improve cost awareness UX and add prompt caching for OpenRouter (#990) (
1ff94d26) - feat(eval): implement DockerGPTMeEnv for Docker-isolated gptme execution (#988) (
1c61f0ed) - feat(context): implement AdaptiveCompressor for Phase 3.1 Week 3-4 (#937) (
d8bc1197) - feat(cli): add context-mode, context-include, output-schema flags for subprocess mode (#987) (
1aac4596) - feat: add shared executor module for ACP/server code reuse (#984) (
6a4756a2) - feat: add parallel tool execution support (#985) (
7d61dc9d) - feat(acp): add Phase 2 tool call reporting and permissions (#979) (
8f5cc107) - feat(subagent): add Phase 1 async enhancements (subprocess mode, hook notifications, batch) (#962) (
431c7c17) - feat(acp): add Agent Client Protocol support (Phase 1) (#978) (
75d94dd3) - feat(cli): add /clear command to clear terminal screen (#968) (
e0168dbf) - feat(models): add ollama/local model discovery to /model command (#960) (
4512d323) - feat(cli): add /delete command to remove conversations (Issue #956) (#959) (
0563366b) - feat(lessons): auto-discover lessons from plugins (#944) (
ab531ad2) - feat(message): add MessageMetadata TypedDict for token/cost tracking (#943) (
684bbb6f) - feat(cost): implement cost_awareness hook for session cost tracking (#939) (
ed409cb2) - feat(telemetry): improve trace quality with context propagation and rich metrics (#942) (
5be5a39d) - feat(shell): add background job support for long-running commands (#902) (
c48bf9bd) - feat(setup): validate API keys before saving (Issue #930) (#931) (
bf1bc716) - feat(lessons): add caching and deduplication to lesson index (#928) (
3fdbf418) - feat(hooks): add form auto-detection hook (Issue #591) (#919) (
40dc68f4) - feat(logmanager): add content-addressable file storage (Issue #150) (#913) (
86febf7d) - feat(tools): add form tool for structured user input (Issue #591) (#911) (
92c475a4) - feat: add Docker container for GitHub bot (Issue #305) (#905) (
ec1204fa) - feat(tmux): add wait command to monitor long-running commands (#901) (
0ee75e54) - feat(prompt): add multi-line input support (#899) (
558ee3b5) - feat(autocompact): add Phase 3 extractive compression for long messages (#886) (
cca057c6) - feat: add diagnostic logging to shell tool for Issue #408 (#890) (
75000919) - feat: support ...