fixing second goal selection loop with prompts

This commit is contained in:
Joshua Smith
2025-04-17 15:20:17 -04:00
parent 4410f30642
commit 32e856e494
2 changed files with 11 additions and 3 deletions

View File

@@ -187,7 +187,7 @@ def generate_pick_new_goal_guidance()-> str:
str: A prompt string prompting the LLM to when to go to pick-new-goal str: A prompt string prompting the LLM to when to go to pick-new-goal
""" """
if is_multi_goal_mode(): if is_multi_goal_mode():
return 'Next should only be "pick-new-goal" if all tools have been run (use the system prompt to figure that out) or the user explicitly requested to pick a new goal. If next is "pick-new-goal" the tool should always be "ListAgents"' return 'Next should only be "pick-new-goal" if all tools have been run for the current goal (use the system prompt to figure that out) or the user explicitly requested to pick a new goal. If next is "pick-new-goal" the tool should always be "ListAgents"'
else: else:
return 'Next should never be "pick-new-goal".' return 'Next should never be "pick-new-goal".'

View File

@@ -177,8 +177,16 @@ class AgentGoalWorkflow:
next_step = tool_data["next"] = "confirm" next_step = tool_data["next"] = "confirm"
current_tool = tool_data["tool"] = "ListAgents" current_tool = tool_data["tool"] = "ListAgents"
waiting_for_confirm = True waiting_for_confirm = True
self.tool_data = tool_data
if self.show_tool_args_confirmation:
self.confirmed = False
# if we have all needed arguments (handled above) and not holding for a debugging confirm, proceed:
else:
self.confirmed = True self.confirmed = True
continue #self.print_useful_workflow_vars("before adding agent message<-- tool data")
# maybe want to do this sometimes? for now it loops self.add_message("agent", tool_data)
self.print_useful_workflow_vars("after pick-new-goal")
continue # try with this out
# else if the next step is to be done with the conversation such as if the user requests it via asking to "end conversation" # else if the next step is to be done with the conversation such as if the user requests it via asking to "end conversation"
elif next_step == "done": elif next_step == "done":