| Name | Modified | Size | Downloads / Week |
|---|---|---|---|
| Parent folder | |||
| README.md | 2025-09-03 | 9.0 kB | |
| Version 0.9.9 source code.tar.gz | 2025-09-03 | 180.8 kB | |
| Version 0.9.9 source code.zip | 2025-09-03 | 202.4 kB | |
| Totals: 3 Items | 392.2 kB | 0 | |
Version 0.9.9 adds support for new OpenAI, Anthropic, Gemini and xAI models, support for more OpenAI-compatible backends, support for structured output (JSON), streamlines rewrite actions, more dry-run options, better handling of "reasoning" text, and many other UI tweaks and bug fixes.
Breaking changes
-
The suffix
-latesthas been dropped from Grok models, as it is no longer required. So the modelsgrok-3-latest,grok-3-mini-latesthave been renamed to justgrok-3,grok-3-miniand so on. -
The models
gemini-exp-1206,gemini-2.5-pro-preview-03-25,gemini-2.5-pro-preview-05-06,gemini-2.5-flash-preview-04-17have been removed from the default list of Gemini models. The first one is no longer available, and the others are superseded by their stable, non-preview versions. If required, you can add these models back to the Gemini backend in your personal configuration::::emacs-lisp (push 'gemini-2.5-pro-preview-03-25 (gptel-backend-models (gptel-get-backend "Gemini")))
New models and backends
-
Add support for
grok-code-fast-1. -
Add support for
gpt-5,gpt-5-miniandgpt-5-nano. -
Add support for
claude-opus-4-1-20250805. -
Add support for
gemini-2.5-pro,gemini-2.5-flash,gemini-2.5-flash-lite-preview-06-17. -
Add support for Open WebUI. Open WebUI provides an OpenAI-compatible API, so the “support” is just a new section of the README with instructions.
-
Add support for Moonshot (Kimi), in a similar sense.
-
Add support for the AI/ML API, in a similar sense.
-
Add support for
grok-4.
New features and UI changes
-
gptel-rewritenow no longer pops up a Transient menu. Instead, it reads a rewrite instruction and starts the rewrite immediately. This is intended to reduce the friction of usinggptel-rewrite. You can still bring up the Transient menu by pressingM-RETinstead ofRETwhen supplying the rewrite instruction. If no region is selected and there are pending rewrites, the rewrite menu is displayed. -
gptel-rewritewill now produce more refined merge conflicts when using the merge action. It works by feeding the original and rewritten text to git (when it is available). -
New command
gptel-gh-loginto authenticate with GitHub Copilot. The authentication step happens automatically when you use gptel, so invoking it manually is not required. But you can use this command to change accounts or refresh your login if required. -
gptel now supports handling reasoning/thinking blocks in responses from xAI’s Grok models. This is controlled by
gptel-include-reasoning, in the same way that it handles other APIs. -
When including a file in the context, the abbreviated full path of the file is included is now included instead of the basename. Specifically,
/home/user/path/to/fileis included as~/path/to/file. This is to provide additional context for LLM actions, including tool-use in subsequent conversation turns. This applies to context included viagptel-addor as a link in a buffer. -
Structured output support:
gptel-requestcan now take an optional schema argument to constrain LLM output to the specified JSON schema. The JSON schema can be provided as- an elisp object, a nested plist structure.
- A JSON schema serialized to a string.
- A shorthand object/array description, described in the manual (and the documentation of
gptel--dispatch-schema-type.)
This feature works with all major backends: OpenAI, Anthropic, Gemini, llama-cpp and Ollama. It is presently supported by some but not all “OpenAI-compatible API” providers.
Note that this is only available via the
gptel-requestAPI, and currently unsupported bygptel-send. -
gptel’s log buffer and logging settings are now accessible from gptel’s Transient menu. To see these turn on the full interface by setting
gptel-expert-commands. -
Presets: You can now specify
:request-params(API-specific request parameters) in a preset. -
From the dry-run inspector buffer, you can now copy the Curl command for the request. Like when continuing the query, the request is constructed from the contents of the buffer, which is editable.
-
gptel now handles Ollama models that return both reasoning content and tool calls in a single request.
-
The “Prompt from minibuffer” option in gptel’s Transient menu behaves slightly differently now. If a region is active in the buffer, it can optionally be included in the prompt. The keybinding to toggle this is displayed during the minibuffer-read.
Additionally, when reading a prompt or instructions from the minibuffer you can switch to a dedicated composition buffer via
C-c C-e.
What's Changed
- gptel-gemini: add
gemini-2.5-pro,gemini-2.5-flash, andgemini-2.5-flash-lite-preview-06-17by @surenkov in https://github.com/karthink/gptel/pull/913 - Only MCP server in the connected state are considered active. by @lizqwerscott in https://github.com/karthink/gptel/pull/911
- Update gptel-make-bedrock example in README by @leezu in https://github.com/karthink/gptel/pull/919
- Bump curl version requirement for AWS Bedrock by @leezu in https://github.com/karthink/gptel/pull/918
- ensure that zero-arg tools have valid parameters struct by @tazjin in https://github.com/karthink/gptel/pull/906
- feat: Added AI/ML API Integration by @D1m7asis in https://github.com/karthink/gptel/pull/930
- Use git to produce better merge conflicts for rewrite by @meain in https://github.com/karthink/gptel/pull/939
- ; * README.org: Add gptel-commit to related projects. by @lakkiy in https://github.com/karthink/gptel/pull/944
- gptel-org: Update gptel-org-set-topic docstring for clarity by @rgkirch in https://github.com/karthink/gptel/pull/936
- Add gemini-2.5 pro and flash productin models by @stribb in https://github.com/karthink/gptel/pull/926
- gptel: Fix warnings when specifying
:preor:postin a preset by @kmontag in https://github.com/karthink/gptel/pull/952 - Adds setup instructions for Open WebUI by @algal in https://github.com/karthink/gptel/pull/954
- Fix log-level selection menu by @nano-o in https://github.com/karthink/gptel/pull/960
- Be more resilient against chunked tool_calls in gptel-openai.el by @timfel in https://github.com/karthink/gptel/pull/951
- Add instructions about Moonshot (kimi) in README by @blahgeek in https://github.com/karthink/gptel/pull/967
- gptel-gemini: add
gemini-2.5-flash-liteGA model by @surenkov in https://github.com/karthink/gptel/pull/986 - gptel-bedrock: Plumb request-params all the way through by @brickZA in https://github.com/karthink/gptel/pull/990
- Fix invalid type char-or-string-p when inserting nil for gptel--system-message by @yathxyz in https://github.com/karthink/gptel/pull/994
- Add GitHub Copilot interactive login by @khinshankhan in https://github.com/karthink/gptel/pull/989
- gptel-gh: update model list by @kiennq in https://github.com/karthink/gptel/pull/1013
- Mark gpt-5 models as reasoning models by @JDNdeveloper in https://github.com/karthink/gptel/pull/1020
- Add gpt-5-mini to github copilot by @matthemsteger in https://github.com/karthink/gptel/pull/1038
- gptel-openai: Update deepseek model specs by @FrauH0lle in https://github.com/karthink/gptel/pull/1054
New Contributors
- @lizqwerscott made their first contribution in https://github.com/karthink/gptel/pull/911
- @leezu made their first contribution in https://github.com/karthink/gptel/pull/919
- @tazjin made their first contribution in https://github.com/karthink/gptel/pull/906
- @D1m7asis made their first contribution in https://github.com/karthink/gptel/pull/930
- @meain made their first contribution in https://github.com/karthink/gptel/pull/939
- @lakkiy made their first contribution in https://github.com/karthink/gptel/pull/944
- @rgkirch made their first contribution in https://github.com/karthink/gptel/pull/936
- @stribb made their first contribution in https://github.com/karthink/gptel/pull/926
- @timfel made their first contribution in https://github.com/karthink/gptel/pull/951
- @blahgeek made their first contribution in https://github.com/karthink/gptel/pull/967
- @brickZA made their first contribution in https://github.com/karthink/gptel/pull/990
- @yathxyz made their first contribution in https://github.com/karthink/gptel/pull/994
- @khinshankhan made their first contribution in https://github.com/karthink/gptel/pull/989
- @JDNdeveloper made their first contribution in https://github.com/karthink/gptel/pull/1020
- @matthemsteger made their first contribution in https://github.com/karthink/gptel/pull/1038
- @FrauH0lle made their first contribution in https://github.com/karthink/gptel/pull/1054
Full Changelog: https://github.com/karthink/gptel/compare/v0.9.8.5...v0.9.9