v0.5.0
Highlights
This release ports the AI chat agent to nr-llm 0.12 and its typed tool-invocation API.
nr-llm 0.12 support
nr-llm 0.12 replaced the legacy array shapes at the provider layer: chatCompletionWithTools() now takes list<ToolSpec> and providers return list<ToolCall> objects. The agent loop now converts MCP wire-shape tool definitions to ToolSpec value objects before each provider call and normalises ToolCall responses back to the legacy array shape before persisting — conversations store tool calls as JSON and resumed conversations replay plain arrays. Malformed entries are still dropped instead of failing the conversation.
ProviderAdapterRegistry became final in nr-llm 0.12; the service layer and tests now depend on ProviderAdapterRegistryInterface.
Breaking for integrators: the composer constraint moves from nr-llm ^0.6 to ^0.12 — both extensions resolve together or not at all.
Release pipeline repairs
The tag-triggered release workflow had been silently broken since March (it referenced a reusable workflow removed from typo3-ci-workflows); it now uses the grouped release-typo3-extension.yml caller with TER/Packagist/docs publication skipped until those channels are set up. The CI test matrix also re-resolves the full dependency tree for the older TYPO3 branch instead of a partial downgrade.
Installation
composer require netresearch/nr-mcp-agent(Not yet on Packagist — consumers add the GitHub repository as a vcs entry.)