Skip to content

Releases: ErikBjare/gptme

v0.18.2

29 Sep 13:36
v0.18.2
Compare
Choose a tag to compare

These are the release notes for gptme version v0.18.2.

Contributors

Thanks to everyone who contributed to this release:

@brayo-pip, @ErikBjare

Changelog

Changes since v0.18.1:

📦 gptme

✨ Features (1)

  • feat: major improvments to evals, can now aggregate eval_results and run rust+browser+git in Docker (passes evals) (bfd1b25)

🐛 Fixes (13)

Click to expand

  • fix(nit): removed excessive newlines in eval output (780c8f9)
  • fix: improved tabcomplete to work well for paths with '~' (b4ff00e)
  • fix: improved code coverage, removed CMDFIX constant (5a7c25a)
  • fix: fixed typing and remove unused function (9c88947)
  • fix(eval): remove gen/run stdout/stderr file paths from results csv (9af35be)
  • fix(eval): dont use CRLF line endings in csv's (67ae863)
  • fix(eval): strip 'openrouter/' prefix when displaying aggregated results (77e9922)
  • fix: fixed lint (2461448)
  • fix: removed code from CaseResult (9481c91)
  • fix: sort models in eval output, change N/A emoji to questionmark (ab63900)
  • fix: catch exceptions in shell tool (f42be8f)
  • fix: sort eval output (a2814a3)
  • fix: made failed patch messages less verbose (3a408d3)

🔨 Misc (5)

  • chore: bump version to 0.18.2 (81708e6)
  • tests: update models to provider/model format (#141) (9060e15)
  • docs: add "live" eval result output to docs (03f8972)
  • refactor: moved Dockerfiles into ./scripts (46340ca)
  • tests: fixed browser search (when desc element not found) (bad47ef)

(excluded 5 less relevant commits)

Full Changelog: v0.18.1...v0.18.2

v0.18.1

27 Sep 08:01
v0.18.1
b0c2ae3
Compare
Choose a tag to compare

These are the release notes for gptme version v0.18.1.

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.18.0:

📦 gptme

🐛 Fixes (1)

  • fix: expanduser() in patch tool, output warning suggesting save tool for inefficient patches (ca2d4e5)

🔨 Misc (1)

  • chore: bump version to 0.18.1 (b0c2ae3)

Full Changelog: v0.18.0...v0.18.1

v0.18.0

26 Sep 17:15
v0.18.0
4a7404f
Compare
Choose a tag to compare

These are the release notes for gptme version v0.18.0.

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.17.0:

📦 gptme

✨ Features (1)

  • feat: added better interrupt handling, requiring two interrupts within 1 sec to exit (when not generating response or executing tools) (7029059)

🐛 Fixes (16)

Click to expand

  • fix: nit to python tool instructions (94b1aaf)
  • fix: refactored cli params, removed special 'ask' value for name (cbf1d12)
  • fix: persist pinned and hide to jsonl, only include files, pinned, etc in toml output if set (c54c1f2)
  • fix: fixed bug in refactor (43f912e)
  • fix: fix resume after refactor (5d1a761)
  • fix: minor fixes, set Console.log_path=False, undo /exit message before exit (711cab4)
  • fix: fixes to cli, improved interrupt, refactored conversation picking to not run when piped, dont run assistant until user message present (project context fix) (417b319)
  • fix: improve rich usage, change calls to use gptme.util.console.{print,input,log} (8cf53cb)
  • fix: improved browser tool search output, if python tool had result then skip stdout in msg (4aaf202)
  • fix: updated system prompt to mention tags (c686dab)
  • fix: limit shell output (8a62859)
  • fix: limited default number of listed conversations to 20 in webui (84ab220)
  • fix: added OpenRouter url when asking for API key (8728012)
  • fix: fix conversation list order in picker, lazily load conversation metadata, add get_user_conversations(), add ?limit= to /api/conversations and use it in webui (9c53aa0)
  • fix: set gptme.version (abcfec0)
  • fix: fixed prompt chaining, added test (fixes #106) (deac8db)

🔨 Misc (15)

Click to expand

  • chore: bump version to 0.18.0 (4a7404f)
  • refactor: separated cli/interactive stuff from chat() into main() (9808166)
  • docs: added more examples (da88a5f)
  • docs: improved docs config, fixed warnings, build in strict mode in CI (no warning allowed) (ae45141)
  • tests: fixed browser search test (a106d5c)
  • docs(README): added ToC (e88d426)
  • docs: added link to examples from intro (6d1471e)
  • refactor: renamed function to remove 'private' underscore prefix (a7a5cf6)
  • docs: updated README (5983f5b)
  • tests: fixed test (d0a946b)
  • docs: added TODO comment (8ad35e1)
  • docs: minor improved examples (1158d95)
  • docs: improved docs structure (User & Dev guide), improved CLI & API Reference, extracted Prompts as new page, added Examples (e1b881a)
  • format: fixed formatting and typing (68c2552)
  • docs: added external link to docs index/sidebar (c9bc488)

(excluded 8 less relevant commits)

Full Changelog: v0.17.0...v0.18.0

v0.17.0

19 Sep 14:49
v0.17.0
Compare
Choose a tag to compare

These are the release notes for gptme version v0.17.0.

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.16.0:

📦 gptme

✨ Features (1)

  • feat: add support for XML-formatted tool calls (#121) (d0b070f)

🐛 Fixes (23)

Click to expand

  • fix: changed warning log to debug (0c4c186)
  • fix: minor eval refactor (improved type names), clarified python tool instructions (e0c79a4)
  • fix: disable tqdm in tests (77ef4fa)
  • fix: reduced number of decimals in eval output (b216179)
  • fix: removed spammy message when not in a git repo (be3d023)
  • fix: futher reliability improvements to evals (622e574)
  • fix: added tqdm progress bar to eval (cd33e06)
  • fix: nitpick (11f1e7e)
  • fix: improved typing in gptme.evals.run (6d00be7)
  • fix: more fixes, speed up list_chats and search_chats by lazily searching chronologically (8c3cb77)
  • fix: more fixes and store eval case results in result directory (1e23ecb)
  • fix: comment out warning for unknown codeblock types, add lru_cache to frequently called get_tool_for_langtag, added wip llm_openai.list_models (aff213f)
  • fix: refactored evals, fixed leaked semaphore warnings, read logs and naively compute tokens from output (3bbd88b)
  • fix: improved system prompt, added system prompt to docs (#123) (62220b1)
  • fix: refactored and improved evals (#122) (e4eb81c)
  • fix: improved eval stream capturing logic (eecabac)
  • fix: improved evals output capturing, don't capture by default if a single test is run, and write streams to results directory (8e9ad4c)
  • fix: process eval run futures in the order they are finished, instead of waiting in order (5601fae)
  • fix: remove the missing datascience packages warning at python tool init (09f115f)
  • fix: add ignorelist for certain known non-executable codeblock langs (7b82b03)
  • fix: lowered logging level for some spammy messages (9a729af)
  • fix: disable placeholder-aware patching if placeholders in original file, improve error message if file not found (1a1e9fb)
  • fix: dont ask for version in bump_version script if already on tag and pyproject updated (68aae66)

🔨 Misc (11)

Click to expand

  • chore: bump version to 0.17.0 (3044149)
  • tests: fixed test_search_chats test (56ffb5a)
  • docs: updated README (a837b32)
  • tests: added particle effect integration-test example (5aa7955)
  • tests: fixed broken test in CI (4947265)
  • refactor: refactored Message into a frozen dataclass (8887ca8)
  • refactor: moved openai model metadata into seperate file, added make update-models to use gptme to update it (11221db)
  • chore: updated gitignore (f2b8be1)
  • docs: updated README (ee87599)
  • tests: fixed test_eval_cli running on models than intended, and not the tested provider (d0ab042)
  • refactor: refactored eval TypedDict types to dataclasses (25de7f7)

(excluded 5 less relevant commits)

Full Changelog: v0.16.0...v0.17.0

v0.16.0

16 Sep 09:52
v0.16.0
d7f170c
Compare
Choose a tag to compare

These are the release notes for gptme version v0.16.0.

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.15.0:

📦 gptme

✨ Features (7)

  • feat: basic support for openai/o1-preview and openai/o1-mini (#117) (cf13bae)
  • feat: added youtube tool (#116) (ad66992)
  • feat: support placeholders in patches (#114) (2e08a3a)
  • feat: added read_chat function to chats tool (#115) (527ce5a)
  • feat: added list_chats to chats tool, and cleaned up/refactored non-ToolSpec-using tools (#110) (5cb3936)
  • feat: added a basic tool to search past conversation logs (#109) (4e36109)
  • feat: added terminal bell to alert the user they have been returned control (1da7d04)

🐛 Fixes (13)

Click to expand

  • fix: support multiple patches in a single codeblock (#118) (ae3ea89)
  • fix: made eval harness more reliable, using Manager (#119) (0787f59)
  • fix: remove spammy log message when youtube tool not available (6ab895c)
  • fix: extended the patch tool prompt to not strictly forbid placeholders, mention scoping strategies and fallback to save (7cf2119)
  • fix: added ./projects and ./demos to gitignore (ef7d9fd)
  • fix: change error on unknown codeblock langtags into warning, dont warn on empty langtag (481ab38)
  • fix: minor improvements to --help output, updated --help example output in README (78f461c)
  • fix: fixed excessive whitespace in patch example prompt (f0818c3)
  • fix: fixed formatting in tools/base.py (e3987bd)
  • fix: added gptme/server/init.py (02a3ecf)
  • fix: improved how ToolUse examples are formatted (1e6574f)
  • fix: fixed bug in how examples were generated for patch tool (c8489ec)
  • fix: dont crash on unknown shell syntax (dd6fff7)

🔨 Misc (5)

  • chore: bump version to 0.16.0 (d7f170c)
  • tests: bumped short token allowed token length (0208e76)
  • refactor: refactor tools, codeblock, and tooluse (#113) (0cad5ca)
  • tests: added minimal tests for chats tool (d079af4)
  • format: formatted codebase (740f132)

(excluded 3 less relevant commits)

Full Changelog: v0.15.0...v0.16.0

v0.15.0

06 Sep 15:34
v0.15.0
01c4812
Compare
Choose a tag to compare

These are the release notes for gptme version v0.15.0.

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.14.2:

📦 gptme

✨ Features (4)

  • feat: added screenshot_url function to browser tool (9cd3850)
  • feat(bot): support non-change questions/answers (de9844d)
  • feat: added special prompting for --non-interactive (9d912c3)
  • feat(github-action): use Docker for gptme execution (97f8724)

🐛 Fixes (11)

Click to expand

  • fix: minor improvement to patch tool prompt (722b2c4)
  • fix: fixed bug with extra 'Skipped hidden system messages' lines from workspace prompt (5937cb7)
  • fix(anthropic): fixed vision and other issues with preparing messages (b9b8455)
  • fix: don't include paths for slash-command arguments, dont inlude workspace prompt on resume (4900d19)
  • fix: catch rich.print() errors and fall back to builtins.print() when printing messages (8698bef)
  • fix: fixed bug checking for browser tool when not available (f86569d)
  • fix: set session size for tmux tool, fixed wrong tmux examples (terminal instead of tmux) (1ef4587)
  • fix: changed tabulate tablefmt in eval output (4251854)
  • fix: fixed docker workspace permissions in bot action (aee7f95)
  • fix: switch from timeout-minutes to using timeout command in bot action step (fa23c66)
  • fix: add 'shell' to shell tool's block_types (d2c4879)

🔨 Misc (9)

Click to expand

  • chore: bump version to 0.15.0 (01c4812)
  • docs: added TODO comment in python tool about which venv the repl should ideally run in (0d8eb85)
  • docs: fixed bad reference (780b3c8)
  • refactor(eval): refactored gptme.eval module, splitting gptme.eval.evals into gptme.eval.suites.{basic, init-project, browser} (bfe5e1b)
  • docs: removed Inputs section from bot.md (e18dcb1)
  • docs: renamed webui.rst to server.rst, added bot.md to index and updated instructions (18b7268)
  • docs: added example of eval run output (c1987fa)
  • tests: fixed blinking test (c6953b3)
  • tests: clarified that we're testing so that it doesnt try to show runnable examples (8514bd3)

(excluded 20 less relevant commits)

Full Changelog: v0.14.2...v0.15.0

v0.14.2

28 Aug 12:10
v0.14.2
6bb3235
Compare
Choose a tag to compare

These are the release notes for gptme version v0.14.2.

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.14.1:

📦 gptme

🐛 Fixes (4)

  • fix(eval): fixed bug when writing timeout results, improved gptme-eval defaults (only 3 models + 5 evals) (707d98c)
  • fix: fixed log selector not opening when running plainly as gptme (5a0c2aa)
  • fix: removed spammy output in docs/conf.py (f3c02f6)
  • fix: remove excessive context files in gptme.toml (ac31e48)

🔨 Misc (2)

(excluded 3 less relevant commits)

Full Changelog: v0.14.1...v0.14.2

v0.14.1

26 Aug 20:09
v0.14.1
0d16ea4
Compare
Choose a tag to compare

These are the release notes for gptme version v0.14.1.

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.14.0:

📦 gptme

✨ Features (3)

  • feat: add magic @log workspace for ./logdir/workspace, use it for evals (9b9d942)
  • feat: added --workspace option, added project-level gptme.toml config file support (incl files to include in context by default) (d914810)
  • feat: added -r/--resume flag to resume last convo (6a58900)

🐛 Fixes (8)

Click to expand

  • fix: hide project context message (07838d6)
  • fix: fix tool init order, ensuring registered functions are included in prompt (3732df1)
  • fix: fixed type error (0b438e1)
  • fix(eval): misc improvements to evals, including reading results files (e30bd08)
  • fix: made several slow imports and top-level calls lazy (#97) (3ddaeae)
  • fix(eval): cleanup evals' children processes using process group, added more evals init-react, init-rust, whois-superuserlabs-ceo (56062ce)
  • fix: added back execution of ```python blocks (b47937a)
  • fix: fixed openrouter provider, added Referer/X-Title header for openrouter requests (c50bfda)

🔨 Misc (4)

  • chore: bump version to 0.14.1 (0d16ea4)
  • tests: loosened short prompt token limit (789d788)
  • chore: cleaned up useless stuff (aacfb93)
  • docs: added basic docs for evals (5a0c47e)

(excluded 2 less relevant commits)

Full Changelog: v0.14.0...v0.14.1

v0.14.0

21 Aug 09:21
v0.14.0
d4c55b6
Compare
Choose a tag to compare

These are the release notes for gptme version v0.14.0.

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.13.2:

📦 gptme

✨ Features (2)

  • feat: anthropic prompt caching beta (bb3d9a5)
  • feat: started working on vision (7b0c5b0)

🐛 Fixes (25)

Click to expand

  • fix: improved test flakiness (0758c4d)
  • fix: check if gitignore exists (d664f4b)
  • fix: moved vue@create example into bash tool (dont try to do it interactively) (5ed36eb)
  • fix: switch to ```ipython syntax for executing with python tool, to differentiate from code samples (see #67) (42ee56a)
  • fix: changed save format to be more explicit (68077b6)
  • fix: removed spammy warning (90aa4a6)
  • fix: removed use of NotRequired for TypedDict (not in Python 3.10) (cfce130)
  • fix: use anthropic api max_retries instead of custom retry_anthropic decorator (008f58c)
  • fix: added retry_anthropic decorator for rate limits (d37d7fb)
  • fix: fixed to evals, capture eval output on timeout/terminate (cd0862a)
  • fix: fixed spammy prints (855a46b)
  • fix: clarified return format for subagent (e5e2a9a)
  • fix: fixed bug in transform_examples_to_chat_directives (2997aa4)
  • fix: print logs dir with --version command (1ca6127)
  • fix: enabled stricter linting and fixed lints (apparently needed given a25aa7d) (bf67b32)
  • fix: fixed nasty bug with mutable argument default (a25aa7d)
  • fix: switch recommended openai model to gpt-4o (b3582ac)
  • fix: moved len_tokens and msgs2dicts from util.py to message.py (94bade3)
  • fix: support nested codeblocks, rewrote/refactored codeblock parsing/management (3e291a4)
  • fix: fixed incorrect storage format for Message.to_dict (07f1cbb)
  • fix: added preliminary nested codeblock support (885e544)
  • fix: added openai vision support (6bbec93)
  • fix: completed basic vision support (f184607)
  • fix: correct extremely short 'Thinking...' message, now wait until first character (b25e576)
  • fix: typing for subagent tool, added --check-untypes-defs to mypy (d94a71e)

🔨 Misc (20)

Click to expand

  • chore: bumped version to v0.14.0 (d4c55b6)
  • refactor: renamed terminal tool to tmux (79355bc)
  • tests: increase max tokens for full system prompt significantly (c785cfe)
  • tests: made test_subprocess less flaky (3423474)
  • tests: added difficult but reasonably simple integration test example (create vite project, build simple app) (57b6feb)
  • docs(README): minor improvements (c43cc8a)
  • docs(README): misc minor improvements (c705c80)
  • tests: removed uninteresting examples from test-integration.sh (18c1afa)
  • docs: added links to top of README (b15d686)
  • docs(README): added mention that vision works, 'GPTMe' -> 'gptme' for title, mention OpenRouter support (4e39f63)
  • tests: run both eval tests (cli and direct call) for better coverage somehow (859efbe)
  • tests: fixed tests failing due to new file (706f13c)
  • refactor: refactored provider-specific code into new files llm_openai.py and llm_anthropic.py (eec8215)
  • tests: fix coverage for eval tests (multiprocessing workaround) (9ef1ec4)
  • tests: added test_eval_cli and cleaned up eval code (c0e5c87)
  • tests: basic test for evals (770ed2c)
  • tests: fix --version test (4ca5078)
  • tests: remove ambiguity in subagent fib test prompt (fe063ec)
  • tests: added test for vision (a740194)
  • refactor: moved eval code into gptme.eval, added gptme-eval entrypoint, fixed typing (8a1bb09)

(excluded 14 less relevant commits)

Full Changelog: v0.13.2...v0.14.0

v0.13.2

11 Aug 09:24
v0.13.2
Compare
Choose a tag to compare

These are the release notes for gptme version v0.13.2.

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.13.1:

📦 gptme

✨ Features (1)

  • feat: major eval revamp, openrouter support, removed --llm in favor of --model <provider>/<model> (6fa8016)

🐛 Fixes (1)

🔨 Misc (3)

  • chore: bump version to 0.13.2 (6c78fe7)
  • docs: center title and badges, split badge line into 3 lines (80abce0)
  • docs: added Discord and HN links to README (746c733)

(excluded 2 less relevant commits)

Full Changelog: v0.13.1...v0.13.2