ellmer recently added tool_context() plus a per-conversation chat$store environment (tidyverse/ellmer#1023, part of tidyverse/ellmer#871). Tools can use it to access per-conversation state without globals, and it survives clone(deep = TRUE).
chatlas has no equivalent: there's no contextvar-based way for a running tool to access the current chat/tool-call context, and no per-chat mutable store.
Possible shape on the Python side: a tool_context() accessor backed by a contextvars.ContextVar set around tool invocation, plus a chat.store dict (or similar) that tools can read/write.
ellmer recently added
tool_context()plus a per-conversationchat$storeenvironment (tidyverse/ellmer#1023, part of tidyverse/ellmer#871). Tools can use it to access per-conversation state without globals, and it survivesclone(deep = TRUE).chatlas has no equivalent: there's no contextvar-based way for a running tool to access the current chat/tool-call context, and no per-chat mutable store.
Possible shape on the Python side: a
tool_context()accessor backed by acontextvars.ContextVarset around tool invocation, plus achat.storedict (or similar) that tools can read/write.