| 333 | } |
| 334 | |
| 335 | func planningOverlaySubagentGuidance() string { |
| 336 | planModeDescriptions := map[string]string{ |
| 337 | subagentTypeGeneral: "non-mutating substantial investigation, analysis, and planning support", |
| 338 | subagentTypeExplore: "narrow repository-local codebase lookup and code tracing", |
| 339 | } |
| 340 | |
| 341 | return "Use read_file, execute, process_output, list_templates, read_template, " + |
| 342 | spawnAgentToolName + ", and approved external MCP tools when available to gather context. " + |
| 343 | "Workspace MCP tools are not available in root plan mode, and side-effecting built-in tools such as process_list, process_signal, message_agent, close_agent, and computer-use actions remain unavailable. In Plan Mode, " + |
| 344 | spawnAgentToolName + " delegation is for investigation and planning " + |
| 345 | "support, not code writing or implementation. Use type=\"" + subagentTypeGeneral + |
| 346 | "\" for substantial investigation, reasoning, and planning support. " + |
| 347 | "Use type=\"" + subagentTypeExplore + |
| 348 | "\" only for narrow repository-local lookup or tracing. Allowed type " + |
| 349 | "values in Plan Mode: " + |
| 350 | formatSubagentDefinitionsWithDescriptionOverrides( |
| 351 | subagentDefinitionsByID( |
| 352 | subagentTypeGeneral, |
| 353 | subagentTypeExplore, |
| 354 | ), |
| 355 | planModeDescriptions, |
| 356 | ) + "." |
| 357 | } |