Changelog
This page summarizes the latest release. The development branch also includes unreleased changes: inspect the pending changelog fragments before assuming a behavior is available in a tagged package.
The complete changelog is the canonical release ledger. The manual's older highlights are selective and may omit intermediate versions.
During 0.x, a minor release may introduce breaking changes; patch updates remain within the minor series. Review migration notes before upgrading.
Version 0.44.0 (2026-11-12)
A configuration can have its texts checked against a rule set by a second model, a table task can send its rows as TOON, EXT:autotranslate can translate through nr-llm, and an agent run stores what its model calls cost. nr-llm now requires nr-vault 1.5. Run the TYPO3 database schema update after updating.
- Rule-set judge (ADR-288): a configuration can have its texts checked
against a rule set by a second, small model. The rule set is the snippets
carrying the selected tags; mode
reportdelivers the text with a hint that quotes the broken rule and the passage, modeblockstops it. Off by default.tx_gainsnrllm_ configuration rule_,judge_ mode rule_andjudge_ tags rule_.judge_ configuration - Guardrail configurations (ADR-290): a caller can name further
configurations with
with; their term lists screen the call as well, and the rule-set judge of each one applies, the strictest mode deciding. The backend AI chat uses it so that a site with its own configuration keeps the chat's bans.Guardrail Configurations () - TOON table input (ADR-286): with
"format":"toon"in a table task'sinput_the rows go to the model in TOON instead of JSON; on the first 50 rows of five demo tables this needed 45 to 71 % fewer tokens.source - EXT:autotranslate (ADR-289): its
translatorcan nameClass Netresearch\, which translates through the nr-llm translator in the settingNr Llm\ Integration\ Autotranslate\ Autotranslate Translator autotranslate.and refuses a blank, cut-off or markup-only answer instead of storing it.translator - A2A client (spec 051, stages 1 and 2): an administrator can register a remote
agent that speaks Agent2Agent 1.0, import its card with
nrllm:, and send it a message witha2a: import nrllm:. Nothing is sent unless an agent is registered. Requests go through the address guard and are pinned to the checked addresses, which needsa2a: send netresearch/1.5. Stage 2 lets an agent run delegate a step to a skill of an enabled remote agent and wait in the new statusnr- vault waiting_untilfor_ dependency nrllm:continues it; while nr_mcp_agent is installed no delegation tool is offered. New tablesa2a: poll tx_andnrllm_ a2a_ task tx_.nrllm_ a2a_ event - Run cost: an agent run stores what its model calls cost, also across an approval or input pause. Before, every run stored a cost of 0; a run whose cost is unknown now shows "Unknown".
- Failed approved writes: a background batch offers a record again when its card was approved but the write failed, and the Agent Runs module marks a finished run whose tool call failed.
- Head editors (ADR-277): the new grant
usage_and the group field AI usage visible for groups open the module AI usage of my groups.view_ groups be_gainsgroups tx_.nrllm_ usage_ visible_ groups - An approval or input in the Agent Runs inbox streams a line per step, so a reverse proxy's read timeout counts one step instead of the whole continuation (ADR-276).
- Workspace writers ask an inline owner as the run's workspace shows it, and approval cards name a content element without a header by its type and UID.