1 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.


2 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.


3 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.


4 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.


5 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 content.
  • Fix async tools confirmation. Use callback function to return result
    to the agent.
  • Improve system message handling. Added optional MSG parameter to
    ellama-get-system-message to allow callers to provide custom system
    messages via the :system plist key. This allows sub-agents to use
    skills.
  • Improve agent response result handling. Updated result encoding to
    return "done" for nil results instead of causing potential errors.
  • Fix result handling in tool execution wrapper. Improved the logic
    for handling tool results by ensuring JSON encoding only occurs when
    a result exists. This change fixes async task execution.


6 Version 1.12.3
════════════════

  • Improve loop control in confirmation dialog. Refactored the while
    loop in the confirmation prompt to use explicit t/nil returns for
    loop continuation instead of throw/catch. This improves code
    readability and maintainability while preserving all existing
    functionality.


7 Version 1.12.2
════════════════

  • Add view and reply options to ellama-tools confirmation.
  • Remove tools list tool to minimize LLMs distraction.
  • Add automated NEWS formatting using `make refill-news'.


8 Version 1.12.1
════════════════

  • Simplify project root detection in `ellama-get-agents-md-path' to
    use `ellama-tools-project-root-tool'. This refactoring eliminates
    potential nil returns from project-current, making the function more
    robust when locating the AGENTS.md file.


9 Version 1.12.0
════════════════

  • Add asynchronous task delegation functionality via the new `task'
    tool that allows delegating descriptions to subagents with custom
    roles and max-steps limits.
  • Add configurable subagent roles with `ellama-tools-subagent-roles'
  …  …
