mirror of
https://github.com/AstrBotDevs/AstrBot
synced 2026-07-16 01:40:15 +08:00
Introduce session-level state management for tools that need to maintain state across conversation turns within the same session (UMO). - Add ToolSessionManager class for central per-(UMO, tool_name) state - Add ToolSessionState with set_persistent(key) support - Add is_stateful flag to FunctionTool base class - Wire session_manager through run_context in all agent runners - Update ExecuteShellTool to use framework session manager - Update CLAUDE.md with stateful tool documentation BREAKING: Tools that were manually managing session state via _sessions dict should migrate to use the framework's ToolSessionManager for proper lifecycle management and persistence support.