Streaming & Tool/Function Calling
Incremental SSE-style chat streaming and OpenAI-compatible tool calling behind one provider-agnostic interface, with budget, usage, and telemetry accounting on every path.
nr-llm
Longer, developer-focused walk-throughs of the features that carry the most detail — what they are for, why they exist, how they work, and how to use them. Each links the authoritative ADRs and the developer docs.
Incremental SSE-style chat streaming and OpenAI-compatible tool calling behind one provider-agnostic interface, with budget, usage, and telemetry accounting on every path.
Two function-calling tools that ground the model in the site's own public content, reading whichever TYPO3 search index is installed with a database fallback.
One interface across seven chat-provider adapters, with configuration-level fallback and API keys stored as nr-vault UUIDs rather than plaintext.
One lifecycle for every agent run, synchronous or on a queue worker, and a human approval gate in front of every builtin tool call that writes to the installation.
One routing decision with a reason per candidate, a context budget sized to the model that answers, data classes bound against provider trust zones, and per-call cost attributed to the calling extension.
nr-llm connects to external Model Context Protocol servers over HTTP and registers their tools next to the builtin ones, behind the same gate, approval and audit.