You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
New ChatBedrock() gives full access to AWS Bedrock's model catalog — Nova, Llama, Mistral, DeepSeek, Qwen, plus the GPT-5 family, Grok 4.3, and Gemma 4 — not just Claude, none of which were previously available through chatlas. It replaces ChatBedrockAnthropic() as the recommended entrypoint; the right request format ("converse", "responses", or "messages") is picked automatically from the model name, or set api explicitly.
Improvements
Updated default models to match the latest generation:
Echoing turns in the console and notebooks got a round of display improvements:
Reasoning/thinking content now actually shows up — it used to silently disappear, since it was wrapped in literal <thinking> tags that a markdown renderer treated as an HTML block and dropped. It renders in a collapsible "Thinking" panel (a <details> block in notebooks) that stays open while streaming and collapses once done, and is capped to the most recent lines when long. (#361)
Long tool results no longer flood the screen — they collapse/truncate with a clear count of what's hidden, scrolling internally in notebooks beyond a bounded height. (#361)
Images from models or tools now render as compact thumbnails instead of raw base64 data.
Web search, fetch, and citation activity is now visible too, grouped into a "Searched the web" / "Read the web" panel that marks which sources were actually cited. (#256)
All of these size limits are tunable via Chat.set_echo_options() (tool_result_max_lines, tool_result_max_height, thinking_max_lines, image_max_lines, web_activity_max_sources), and can be turned off entirely with None.
Registering a built-in tool (tool_web_search(), tool_web_fetch()) with a provider that can't run it now fails immediately with a clear error naming the tool and provider, instead of silently no-op'ing or dying deep inside a later request. (#367)
Bug fixes
echo="all" no longer displays tool results twice — once in full as part of the user turn, and again on their own.
Chat.set_echo_options(css_styles=) now actually applies in notebooks.
Tool names and argument names are now HTML-escaped in notebook/shiny rendering, closing an HTML-injection hole.
A tool that reports progress by yielding more than once, or an MCP server that answers a call with several content parts (text plus an image, say), no longer breaks the request.
register_mcp_tools_stdio_async() and register_mcp_tools_http_stream_async() no longer fail when an MCP server leaves some tool annotations unset.
ContentCitation, ContentToolRequestFetch, and ContentToolResponseFetch now actually render, instead of silently vanishing due to a markdown link-reference parsing quirk.
ChatAnthropic() (and ChatBedrockAnthropic()) now bill refusal-fallback turns at the correct (serving model's) rate rather than the originally requested model's, mirroring ellmer's equivalent fix.
Breaking changes
ChatGithub() is now defunct: it always raises RuntimeError. GitHub Models was retired on 2026-07-30, so the underlying API no longer works. Use ChatGoogle() (offers a free tier) or ChatPosit() (offers a free trial) instead.