Version 1.8.3 of package Ellama has just been released in GNU ELPA. You can now find it in M-x list-packages RET.
Ellama describes itself as: ============================== Tool for interacting with LLMs ============================== More at https://elpa.gnu.org/packages/ellama.html ## Summary: [file:https://img.shields.io/badge/license-GPL_3-green.svg] [file:https://melpa.org/packages/ellama-badge.svg] [file:https://stable.melpa.org/packages/ellama-badge.svg] [file:https://elpa.gnu.org/packages/ellama.svg] Ellama is a tool for interacting with large language models from Emacs. It allows you to ask questions and receive responses from the LLMs. Ellama can perform various tasks such as translation, code review, summarization, enhancing grammar/spelling or wording and more through the Emacs interface. Ellama natively supports streaming output, making it effortless to use with your preferred text editor. The name "ellama" is derived from "Emacs Large LAnguage Model Assistant". Previous sentence was written by Ellama itself. <file:imgs/reasoning-models.gif> ## Recent NEWS: 1 Version 1.8.3 ═══════════════ • Added `ellama-debug' custom variable to enable debug output. When enabled, generated text is now logged to a `*ellama-debug*' buffer with a separator for easier tracking of debug information. The debug output includes the raw text being processed and is appended to the end of the debug buffer each time. • Fixed issue where nested or improperly formatted code blocks were not being handled correctly during markdown to org conversion. Added logic to check for existing BEGIN_SRC markers before replacing blocks, and improved backward search handling. Also added test cases for multiple bad code blocks with good content before and after them. • Changed `ellama--string-without-last-line' function to `ellama--string-without-last-two-lines' to remove last two lines instead of one. Updated the text insertion logic in `ellama--insert' to use the new function and handle paragraph filling more robustly. Also improved the condition check for wrong character count and adjusted test cases accordingly. • Fixed test case. • Added reproduction of duplicate lines bug. Fix this bug. 2 Version 1.8.2 ═══════════════ • Refactored `ellama--apply-transformations' to use markers for stability during replacements. Added `set-hard-newline' properties to handle hard newlines during text filling. Updated test cases to include a new test for markdown list to org list conversion. • Added check for function existence to avoid errors when `llm-ollama-p' is not available. • Displayed ellama instant result buffer on done instead of visible reasoning buffer. • Added two new tests for ellama functionality: `test-ellama-lorem-ipsum' verifies proper line wrapping and formatting of long text. `test-ellama-duplicate-strings' checks handling of duplicate strings with markdown formatting. • Added a check to skip processing when input text is empty, preventing potential errors in subsequent operations. • Moved `(require 'llm-ollama)' from inside the function to top scope to ensure package is loaded before use. 3 Version 1.8.1 ═══════════════ • Use direct interfacing with Ollama's API instead of local installation. 4 Version 1.8.0 ═══════════════ • Added `create-session' optional parameter to `ellama-ask-about', `ellama-ask-selection', `ellama-ask-line', and `ellama-code-review' commands, and added `--new-session' option to transient commands. These changes allow creating a new session even if one is already active. • Added the ability to create an ephemeral session by adding a new `:ephemeral' argument to various functions and added the `--ephemeral' option to several transient commands in `ellama-transient.el'. • Implemented ephemeral context elements that are cleared after a single LLM request. Added corresponding functions and transient suffixes to manage ephemeral context elements, updating existing functions to handle both global and ephemeral contexts. • Set up the transient menu to ensure the Ollama model is filled if it's empty. • Added `use-hard-newlines' variable and updated text insertion to use hard newlines. Ensured that text is inserted only if there is a delta, and improved the conditional logic for filling paragraphs. 5 Version 1.7.2 ═══════════════ • Added detailed context management documentation. 6 Version 1.7.1 ═══════════════ • Set default directory for new sessions. • Added functionality to set the file name before saving a session. • Enhanced session ID generation to prevent overwriting existing session files. 7 Version 1.7.0 ═══════════════ • Added manual generation functionality for Ellama, including a new .gitignore entry to exclude ellama.texi, created ellama-manual.el for exporting an info manual from the README, and added the file ellama.info. • Added the GNU Free Documentation License (FDL) text to README.org and updated ellama-manual.el to include FDL information ensuring compliance with FDL requirements. Added GNU Free Documentation License document to the project, ensuring that manuals remain free in terms of freedom to copy, distribute, and modify. … …
