You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
"When true, stop the agent's current task and handle this immediately. When false (default), queue this message."
167
+
"When true, stop the agent's current task and handle this immediately. When false (default), queue this message; if the target is already running, it starts the target's next turn after the current turn completes."
170
168
.to_string(),
171
169
)),
172
170
),
173
171
]);
174
172
175
173
ToolSpec::Function(ResponsesApiTool{
176
174
name:"followup_task".to_string(),
177
-
description:"Add a message to an existing non-root agent and trigger a turn in the target. Use interrupt=true to redirect work immediately. In MultiAgentV2, this tool currently supports text content only."
175
+
description:"Send a string message to an existing non-root agent and trigger a turn in the target. Use interrupt=true to redirect work immediately. If interrupt=false and the target's turn has not completed, the message is queued and starts the target's next turn after the current turn completes."
description:"Wait for a mailbox update from any live agent, including queued messages and final-status notifications. Returns a brief wait summary instead of agent content, or a timeout summary if no mailbox update arrives before the deadline."
217
+
description:"Wait for a mailbox update from any live agent, including queued messages and final-status notifications. Does not return the content; returns either a summary of which agents have updates (if any), or a timeout summary if no mailbox update arrives before the deadline."
"Optional MultiAgentV2 fork mode. Use `none`, `all`, or a positive integer string such as `3` to fork only the most recent turns."
557
+
"Optional number of turns to fork. Defaults to `all`. Use `none`, `all`, or a positive integer string such as `3` to fork only the most recent turns."
560
558
.to_string(),
561
559
)),
562
560
),
@@ -652,6 +650,36 @@ Requests for depth, thoroughness, research, investigation, or detailed codebase
652
650
)
653
651
}
654
652
653
+
fnspawn_agent_tool_description_v2(
654
+
available_models_description:Option<&str>,
655
+
include_usage_hint:bool,
656
+
usage_hint_text:Option<String>,
657
+
) -> String{
658
+
let agent_role_guidance = available_models_description.unwrap_or_default();
659
+
660
+
let tool_description = format!(
661
+
r#"
662
+
{agent_role_guidance}
663
+
Spawns an agent to work on the specified task. If your current task is `/root/task1` and you spawn_agent with task_name "task_3" the agent will have canonical task name `/root/task1/task_3`.
664
+
You are then able to refer to this agent as `task_3` or `/root/task1/task_3` interchangeably. However an agent `/root/task2/task_3` would only be able to communicate with this agent via its canonical name `/root/task1/task_3`.
665
+
The spawned agent will have the same tools as you and the ability to spawn its own subagents.
666
+
It will be able to send you and other running agents messages, and its final answer will be provided to you when it finishes.
667
+
The new agent's canonical task name will be provided to it along with the message."#
"When true, stop the agent's current task and handle this immediately. When false (default), queue this message; if the target is already running, it starts the target's next turn after the current turn completes."
0 commit comments