Skip to content

Releases: ErikBjare/gptme

v0.22.0

01 Nov 15:18
v0.22.0
cdd8c6b
Compare
Choose a tag to compare

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

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.21.0:

📦 gptme

✨ Features (5)

  • feat: implement anthropic-style computer tool (#225) (175167e)
  • feat: added /export comment to export self-contained HTML file built from webui (#235) (0ca914f)
  • feat: add platform info to the system prompt (#171) (0288d33)
  • feat: added lynx browser support (#214) (2cd9ffb)
  • feat: added deepseek support (#180) (949eaee)

🐛 Fixes (11)

Click to expand

  • fix: correct Linux distro version in systeminfo prompt (#239) (3221145)
  • fix: informative message for agent when permission isn't granted (#223) (5ee0f2f)
  • fix: fixed version looking up old package name (f8c296f)
  • fix: set <title> in export and make sure /export command doesn't get saved to log (2a5576a)
  • fix: improved chat picker (now uses full-width of terminal) (32db19d)
  • fix: add cli-provided prompts to readline history (ffaa109)
  • fix: improved reliability of llm.generate_name() (b931103)
  • fix: include conversation name in exported chat log (abc4928)
  • fix: changed all Message-generator tools to simply print/return value instead (fixes #186, fixes #187) (3dcef9f)
  • fix: fixed support for groq (and deepseek?) (#231) (cea30cf)
  • fix: fixed screenshot() not running if generator not consumed (such as when not last statement in codeblock) (65bdb8a)

🔨 Misc (8)

Click to expand

  • chore: bump version to 0.22.0 (cdd8c6b)
  • docs: removed bad computer use example (66898b2)
  • tests: fixed blinking test due to changed working dir (40d1a5d)
  • docs: add installing from source instructions to contributing guide (#236) (4665f49)
  • format: s/whitelist/allowlist (e77cd4e)
  • docs: add mention of configuration file on providers page (16f8254)
  • docs: fixed incorrect local/ollama/... provider prefix (3eb6f8f)
  • docs: improved note about outdated demos (cdce637)

(excluded 2 less relevant commits)

Full Changelog: v0.21.0...v0.22.0

v0.21.0

25 Oct 10:17
v0.21.0
852e6f4
Compare
Choose a tag to compare

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

Contributors

Thanks to everyone who contributed to this release:

@brayo-pip, @ErikBjare

Changelog

Changes since v0.20.0:

📦 gptme

✨ Features (4)

  • feat: added support for groq provider (4299cd0)
  • feat:whitelist some commands (7f1ba2b)
  • feat: added support for xAI/grok (d7cebba)
  • feat: started working on ncurses ui (d3413ea)

🐛 Fixes (19)

Click to expand

  • fix: added 'head' to allowlisted commands in shell tool (7cc752f)
  • fix: compile cmd_regex (#222) (623a52d)
  • fix: print used model on startup (6cf4001)
  • fix: better error if attempting to run on Windows, refactor readline stuff (#221) (bd8b746)
  • fix: update to use latest Sonnet model by default, improve typing (6e70168)
  • fix: dont catch interrupts until conversation has begun (2be45a8)
  • fix: added ncgptme and gptme-nc script entrypoints for ncurses tui (7b19b76)
  • fix: fixed typing in ncurses.py (f018c6c)
  • fix: improved shell tool preview format (756e420)
  • fix: change OPENAI_API_BASE to OPENAI_BASE_URL (30e3f01)
  • fix: ensure subagent logdir unique (f735111)
  • fix: changed subagent tool param order and example (2bdb48f)
  • fix: fixed display bug in confirm prompt (b9f8cd8)
  • fix: fixed bug where user prompt not included in request (53d160e)
  • fix: fixed prompt_user returning empty string when interrupted (440aedb)
  • fix: fixed leftover call to ask_execute instead of confirm func (b7d2a3f)
  • fix: fixed incorrectly asking for confirmation when impersonating (9498343)
  • fix: more fixes/improvements to treeofthoughts.py (d54df51)
  • fix: re-raise tool use errors in tests (0ada191)

🔨 Misc (14)

Click to expand

  • chore: bump version to 0.21.0 (852e6f4)
  • docs: added more WIP features to README (2d8b602)
  • docs: added note about Windows support (b8ce040)
  • docs: added docstring to ncurses.py (5bb0024)
  • docs: add note about limitations of small local models, convert page to rst (f521c71)
  • format: fixed lints (ff2277c)
  • refactor: refactor ncurses.py and add --no-color cli argument (942996c)
  • docs: added basic docs for configuration files (fixes #173) (acd0cee)
  • docs(README): removed old ToC link (5801bbf)
  • docs: fixed docs building after refactor (52eaed9)
  • refactor: refactor how confirmation works, enabling LLM-guided confirmation and simplifying confirmation support in server (b843e88)
  • refactor: work on programmatic interface, refactored LogManager into mutable manager and immutable Log dataclass, added wip treeofthought script (d421cc8)
  • format: fixed formatting after pre-commit setup (4ee9761)
  • docs: fixed incorrect OPENAI_API_BASE url (732c5b8)

(excluded 4 less relevant commits)

Full Changelog: v0.20.0...v0.21.0

v0.20.0

10 Oct 11:34
v0.20.0
5d0b138
Compare
Choose a tag to compare

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

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.19.2:

📦 gptme

✨ Features (1)

  • feat: updated webui style, with sidebar (bd44e5c)

🐛 Fixes (10)

Click to expand

  • fix: use importlib.util.find_spec instead of attempting costly imports at startup, reducing startup time by ~1s (7b75520)
  • fix(webui): put <thinking> tags into <details>, minor style improvements (04b3109)
  • fix(webui): switch to marked over showdown, improved styling and misc fixes (0a868ba)
  • fix: catch exceptions when executing tools (9560660)
  • fix: handle bad patches better (771734c)
  • fix: limit image size, fixes exception for large images (fixes #185) (#188) (45cfbac)
  • fix: fixed incorrectly nested string in f-string (4aa3f2d)
  • fix: made shell tool more strict, now requires exact 'shell' langtag to run (578adcc)
  • fix: use stdout/stderr as langtags in shell output, instead of as headings (c102806)
  • fix: log warning if allowlisted tool could not be found (f1864c7)

🔨 Misc (9)

Click to expand

  • chore: bump version to 0.20.0 (5d0b138)
  • docs: added startup time to 'Are we tiny?' page (cde7937)
  • refactor: extracted js part of webui into seperate file (919fe93)
  • docs: improved styling of demos (018e6ff)
  • docs: more use of rubric::, use sphinxcontrib.asciinema to embed player (fdfc658)
  • docs: improved getting started, tool docs, and docstrings (5c827eb)
  • docs: updated docs for running with ollama (litellm no longer needed) (f258602)
  • docs: updated docs for running locally with ollama/litellm (fa59310)
  • improve: enhance API key setup UX and error handling (7231aa9)

Full Changelog: v0.19.2...v0.20.0

v0.19.2

07 Oct 06:37
v0.19.2
cea928e
Compare
Choose a tag to compare

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

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.19.1:

📦 gptme

🐛 Fixes (3)

  • fix: catch exception if history file fails to load for any reason (d832c9c)
  • fix: change openrouter default model to llama-3.1-405b-instruct (fcf69f5)
  • fix: openrouter wasn't picked up as default provider when apikey present (fixes #157) (a8dc5fd)

🔨 Misc (5)

  • chore: bump version to 0.19.2 (cea928e)
  • refactor: extracted chat and step from cli.py into new chat.py (#158) (5081c89)
  • docs(README): change pypi/pepy badges/links to use new gptme package (1a7e4ef)
  • docs(README): fix pepy.tech badge links, until the new package name doesn't 404 (8f7d272)
  • docs(README): fixed logo in PyPI readme by using full URL (cced9cc)

Full Changelog: v0.19.1...v0.19.2

v0.19.1

05 Oct 15:36
v0.19.1
eb1c17f
Compare
Choose a tag to compare

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

Contributors

Thanks to everyone who contributed to this release:

@cshintov, @ErikBjare

Changelog

Changes since v0.19.0:

📦 gptme

✨ Features (1)

  • feat: added diff previews for save tool (9694fad)

🐛 Fixes (4)

  • fix: fixed typing (21c550c)
  • fix: hopefully fix flaky test (8a99808)
  • fix: shorten output paths by replacing home path with tilde (5d66fda)
  • fix: fixed vision issues for .jpg files and when resuming convo (548634d)

🔨 Misc (14)

Click to expand

  • chore: bump version to 0.19.1 (eb1c17f)
  • chore: changed PyPI name from gptme-python to gptme (fixes #148) (354d0c2)
  • refactor: moved ./static into ./gptme/server/static (b47a7bc)
  • docs: add local provider in provider examples (#149) (f54514b)
  • refactor: moved ./train into ./scripts (cab7a76)
  • docs: move CONTRIBUTING.md to page in docs (ea4f30a)
  • docs: moved timeline links in README into docs (69b2dea)
  • docs(README): center align intro text (945b5ce)
  • docs(README): improved intro text (50a45d1)
  • docs: fixed relative link in README (broken on site) (174eda5)
  • docs: fixed link replacement in site generation (afbb754)
  • docs: fixed the site style a bit (6339e2d)
  • docs: improved site generation from README.md through better use of pandoc styling and templating (2c41b63)
  • docs(README): updated vision as complete (c3330ac)

(excluded 3 less relevant commits)

Full Changelog: v0.19.0...v0.19.1

v0.19.0

02 Oct 17:44
v0.19.0
Compare
Choose a tag to compare

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

Contributors

Thanks to everyone who contributed to this release:

@ErikBjare

Changelog

Changes since v0.18.2:

📦 gptme

✨ Features (3)

  • feat: added screenshot tool (#92) (f4c63c2)
  • feat: added vision tool (597c66c)
  • feat: added -t/--tools option to specify which tools to load (48d559b)

🐛 Fixes (13)

Click to expand

  • fix: fixed lint (a3bcf49)
  • fix: removed incorrect calls to register_function, removed dead code (a4fa62e)
  • fix: more patch tool refactor (9627b73)
  • fix: removed emoji from ask_execute, added secret auto answer in ask_execute (5eddc6a)
  • fix: added patch previews (dd7be0d)
  • fix: completed diff_minimal (df9d83c)
  • fix: flush stdin before asking to execute (prevent unread input from answering before asked) (6ab4dbe)
  • fix: implemented example_to_xml to support xml-ify prompt (#146) (5f37d10)
  • fix: init tools in evals (44e76ff)
  • fix: improved patch warning message on large patches (5e635b6)
  • fix: froze more dataclasses (953f801)
  • fix: improve tool init logic for tools needing it (python), added toolspec args docs (f8e5cd6)
  • fix: use prompt chaining in subagent task to improve reliability (0dd6583)

🔨 Misc (8)

Click to expand

  • chore: bump version to 0.19.0 (bbe3586)
  • docs: remove completed TODOs (337b025)
  • refactor: refactor patch tool, with plans for producing minimal diffs to replace inefficient diffs in log (e2b2d6a)
  • docs: fixed docstring for gptme.prompts (027cb06)
  • docs: keep copyright year up-to-date (1ac4aee)
  • docs: fixed automation docs (a70b5b5)
  • docs: changed erik.bjareholt.com/gptme/ links to gptme.org/ (52baf5b)
  • docs: added minimal automation docs (#144) (3902b86)

(excluded 2 less relevant commits)

Full Changelog: v0.18.2...v0.19.0

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