Back to Signal Feed
CodeTracked since May 20, 2026

Reload summon subagent instructions each turn

This change moves summon’s subagent/skill discovery out of initialization and into the per-turn McpClientTrait instruction path, so agents or recipes added to .agents/ or .goose/ during an active session are visible on the next reply.

SummonClient::newMcpClientTrait::get_instructionsInitializeResult::instructionsprepare_tools_and_prompt

What Happened

  • This change moves summon’s subagent/skill discovery out of initialization and into the per-turn McpClientTrait instruction path, so agents or recipes added to .agents/ or .goose/ during an active session are visible on the next reply.
  • This change moves summon’s subagent/skill discovery out of initialization and into the per-turn McpClientTrait instruction path, so agents or recipes added to .agents/ or .goose/ during an active session are visible on the next reply.
  • 1 evidence item attached for review.

What is Different

Before

Scattered source updates, isolated context, and manual follow-up across multiple feeds.

Now

Refactored summon instruction loading to be dynamic per reply turn by implementing get_instructions() on the summon MCP client, replacing startup-time freezing of subagent listings.

Why Track This

Why It Matters

Operators and developers can add or modify .agents or .goose extensions in a running Goose session and use them on the next turn without restarting or recreating the session, which prevents workflow interruption during long-running tasks. This is achieved by moving listing from SummonClient::new and InitializeResult::instructions into McpClientTrait::get_instructions, which the system already calls via prepare_tools_and_prompt → get_extensions_info every turn; watch next for added per-turn overhead and consistency behavior when extension files change while inference is in progress.

Impact

Operators and developers can add or modify .agents or .goose extensions in a running Goose session and use them on the next turn without restarting or recreating the session, which prevents workflow interruption during long-running tasks. This is achieved by moving listing from SummonClient::new and InitializeResult::instructions into McpClientTrait::get_instructions, which the system already calls via prepare_tools_and_prompt → get_extensions_info every turn; watch next for added per-turn overhead and consistency behavior when extension files change while inference is in progress.

What To Watch Next

  • Watch whether SummonClient::new becomes a repeated pattern.
  • Track follow-up changes around Agent Orchestration Platforms.
  • Compare future signals against this evidence trail.
  • Re-check risk flags: watch_turn_level_reload_latency, watch_mid_session_file_change_race.
Open Topic TimelineOpen Technical EventOpen Original Sourcewatch_turn_level_reload_latency / watch_mid_session_file_change_race / watch_ensure_all_paths_use_get_instructions

Supporting Evidence