[4.0.4] - 2026-11-08
Added
- Agent.queue_response() combines background follow-ups with other ready results or a customer turn. Pass after=coroutine to register work before it starts; only the deferred reply waits for the registered batch. Coordination lives in one process and requires session routing affinity; pending work is not recovered after a restart. Queued replies tolerate history edits and terminate interrupted streams without appending stale text.
Changed
- When tool preambles are encouraged, the agent writes them, and the progress updates that follow, in the customer's language.
- Agents acknowledge recurring information gaps when different questions cannot be answered, without treating a new question as one already answered.
- Agents ask which record or request the customer means when it's ambiguous, and which of several unfinished requests to handle first, before collecting task details.
Fixed
- Gemini conversations can resume from background results after history is cleared, without an invalid tool-response ordering error.
- The Parlant dashboard now shows your agent's reasoning under Agent activity when the agent streams its messages, the default for create_agent. Each step's reasoning is now recorded as a loop.reasoning trace event. Before, it reached the dashboard only as a log line, which the dashboard read only from agents in block output mode.
parlant[anthropic] works with the current Anthropic SDK. A fresh install picked anthropic 1.0 or later, whose client refused Parlant's request timeout, so no Claude model could start. The extra now requires anthropic>=1.0.0; if your project capped anthropic below 1.0 to work around this, drop the cap. - The chat widget lays out a right-to-left reply, such as Hebrew, right to left even when it opens with an English word, a URL or code. It used to take the direction from the first letter, so such a reply read left to right with its punctuation on the wrong side. Each paragraph, the message box and the suggestion buttons now follow the script most of their words are in.
[4.0.3] - 2026-11-05
Changed
- parlant dashboard commands now tell the Parlant dashboard which command sent each request. Every request carries User-Agent: parlant-cli/, the command's name in X-Parlant-CLI-Command (for example parlant dashboard session list, never its arguments or option values), and an X-Parlant-CLI-Invocation id shared by every request from one run. The dashboard uses them to show your CLI activity as the commands you ran.