Version 1.8.2 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.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. 2 Version 1.8.1 ═══════════════ • Use direct interfacing with Ollama's API instead of local installation. 3 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. 4 Version 1.7.2 ═══════════════ • Added detailed context management documentation. 5 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. 6 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. • Refactored the marker creation logic in ellama.el to use copy-marker for both beg-marker and end-marker, reducing redundancy and improving readability. 7 Version 1.6.2 ═══════════════ • Fix marker handling in block processing to correctly handle block boundaries during text processing and updated tests to include inline code translation from Markdown to Org. • Improve text processing in `ellama.el' by adding markers for beginning and end of the text range to handle text transformation more accurately. Updated paragraph filling logic to avoid unwanted behavior in `org-mode'. • Remove redundant group parameter from all defcustom definitions in ellama.el. • Refactor session line update functions by removing redundant show and hide functions for header and mode lines, simplifying the update functions using a let-bound element variable. • Removed hooks from ellama minor modes. 8 Version 1.6.1 ═══════════════ • Added functionality to display the current Ellama session ID in both the header line and the mode line. • Added globalized minor modes for enabling this feature across all buffers. 9 Version 1.6.0 ═══════════════ • Refactored the text insertion and handling logic in `ellama.el'. … …