[GNU ELPA] Ellama version 1.12.11
ELPA update <[email protected]>
| Newsgroups | gmane.emacs.sources |
|---|---|
| Message-ID | <[email protected]> |
Version 1.12.11 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.12.11
═════════════════
• Fix duplicate system message handling in chat prompts. This change
removes the redundant `llm-chat-prompt-append-response' call that
was appending the system message on each interaction, ensuring the
system message is included only once in the initial prompt context
setup.
• Fix bad src block replacement nil match crash that occurred when
handling certain source code blocks.
• Warn LLM when reading binary content to prevent potential parsing
errors and improve robustness of tool integration.
• Generalize docstring verb-form rule to apply consistently across
documentation and code.
• Implement automatic retry for tool call errors. This feature adds
retry logic to handle transient failures during tool usage by
appending error messages to the prompt and re-invoking requests,
improving overall request reliability.
2 Version 1.12.10
═════════════════
• Fix stack overflow in markdown code fence conversion in
`ellama--translate-markdown-to-org-filter' by replacing expensive
regular expressions with linear line parsing for inline fences.
• Add regression test `test-ellama-md-to-org-inline-fence-long-line'
to cover long lines with inline code fences and prevent this failure
from returning.
3 Version 1.12.9
════════════════
• Fix result delivery for already approved async tools. Ensure results
are delivered via callback function for both interactive and
pre‑approved tools.
• Guard against nil project root tool result. Wrap
`ellama-tools-project-root-tool' result in an and expression to
prevent errors when the tool returns nil, protecting
file-name-directory and expand-file-name calls.
4 Version 1.12.8
════════════════
• Add fallback for AGENTS.md search when
`ellama-tools-project-root-tool' returns nil. This ensures reliable
detection of the AGENTS.md file by falling back to the current
directory.
5 Version 1.12.7
════════════════
• Fix bug when only single tool was available. This change fixes a
duplicate checking issue in the tool list by using `llm-tool-name'
instead of `plist-get' for proper duplicate detection.
• Make `shell_command' tool async. The tool now executes commands
asynchronously using a callback function for better performance.
• Trim shell command output and return nil for async tools. This
ensures proper return value handling for async commands to maintain
compatibility with the llm library.
• Add –no-pager flag to git commands in changelog generation. This
prevents output paging and ensures clean command output.
6 Version 1.12.6
════════════════
• Simplify file writing in `ellama-tools-write-file-tool'. Replaced
temp buffer-based file writing with write-region to simplify
implementation and avoid temporary buffer overhead.
• Refactor file tool parameters. Renamed `path' parameter to
`file_name' across all file operation tools to follow GNU coding
convention. Updated function signatures, docstrings, and tool
definitions accordingly.
7 Version 1.12.5
════════════════
• Prevent duplicate tools in ellama-tools. Added a test function to
add-to-list to check if a tool with the same name already exists
before adding it to ellama-tools-available. This prevents duplicate
tools from being registered when enabling tools by name.
• Update changelog skill quoting style. Changed the changelog
generation skill to use org-mode quoting (`text') instead of
markdown backticks (`text`). Also use "MUST" instead of "must" to
pay LLM's attention to the newline requirement.
8 Version 1.12.4
════════════════
• Normalize file path in write-file function. Added expand-file-name
to properly handle both absolute and relative paths when writing
files, preventing potential issues with file path resolution.
• Filter function objects from function call arguments. This prevents
display of uncallable function objects in the confirmation prompt.
• Make task tool unaccessible for general subagents. This change
improves security and control over tool access.
• Fix file write tool. Corrected the order of operations in
ellama-tools-write-file-tool by setting the buffer file name before
inserting
… …