====== Live tool and plugin refresh ======
**Source snapshot:** 2026-10-25 18:22 UTC, commit ''bc8adfe6a032429c9a3726d81e912e91ceedb6e3''. Live availability follows the pinned rollout receipt.
==== Inspect, request, discover ====
''RuntimeRefresh'' reports the current generation and asset/connection diagnostics:
{"action":"status"}
To request a reload, call the same tool with:
{"action":"reload"}
The response ''queued_for_next_request_boundary'' acknowledges the request, not a completed refresh. Filesystem changes are also checked at safe model-request boundaries. The current response stream and in-flight tool batch keep their existing registry. Root and worker runtimes each own their runtime generation.
Discover actual callable schemas with ''ToolSearch'':
{"query":"mcp__","max_results":10}
''Skill'' with ''{"operation":"list"}'' lists loaded names, descriptions and sources. ''RuntimeRefresh'' status also exposes ''agent_names'' and ''command_names''; ''Task'' resolves named agent types from the current generation.
==== What a generation changes ====
The loader reconciles plugin/user skills, agents, commands and MCP tool catalogs. User definitions take precedence over plugin definitions. Removed assets disappear after a successful refresh. Malformed candidate assets retain the last good generation and return a diagnostic; an unavailable MCP server remains visible in status without claiming callable tools.
MCP wrappers have deterministic names of the form ''mcp_____''. Discovery and calls share an initialized protocol client. A failed side-effecting tool call is not automatically repeated; a disconnected call can have an unknown outcome. Safe discovery/read operations may reconnect and retry once.
This refresh does not rewrite conversation identities, prompt files, model settings or context budgets. A changed tool catalog may make an earlier cache-prefix snapshot ineligible for [[runtime:cache-aware-compaction|cache-aware compaction]].
==== Sources and memory ====
Source: ''docs/research/20261025-live-runtime-refresh.txt'', ''src/app/RuntimeRefresh.cpp'', ''src/conversation/Conversation.cpp'', and ''tests/integration/test_runtime_refresh_native.py'' at ''bc8adfe6a032429c9a3726d81e912e91ceedb6e3''.
When remembering availability, include the runtime generation, server/source provenance and observation time. A source file's presence or an accepted reload request does not establish that a particular runtime has loaded it. See [[memory:provenance-time|source and time]].
**Installed code observation:** 2026-10-25T18:36:38.457052+00:00, native release ''d6949e909ffa08af7951''. This page describes the verified repair rollout; live activity and later changes need fresh observations.
[[https://github.com/Xananthium/batbox/blob/bc8adfe6a032429c9a3726d81e912e91ceedb6e3/docs/wiki/seed/runtime/live-tool-refresh.txt|Pinned source snapshot]]