@@ -10,26 +10,25 @@ async def execute(self, message="", reset="", **kwargs):
1010 self .agent .get_data (Agent .DATA_NAME_SUBORDINATE ) is None
1111 or str (reset ).lower ().strip () == "true"
1212 ):
13- sub = Agent (
14- self .agent .number + 1 , self .agent .config , self .agent .context
15- )
13+ # crate agent
14+ sub = Agent ( self .agent .number + 1 , self .agent .config , self .agent .context )
15+ # register superior/subordinate
1616 sub .set_data (Agent .DATA_NAME_SUPERIOR , self .agent )
1717 self .agent .set_data (Agent .DATA_NAME_SUBORDINATE , sub )
18-
19- prompt_profile = kwargs .get ("prompt_profile" , "default" )
20- agent_prompt_profile = self .agent .config .prompts_subdir
21- if agent_prompt_profile != prompt_profile :
22- self .agent .config .prompts_subdir = prompt_profile
18+ # set default prompt profile to new agents
19+ sub .config .prompts_subdir = "default"
2320
2421 # add user message to subordinate agent
2522 subordinate : Agent = self .agent .get_data (Agent .DATA_NAME_SUBORDINATE )
2623 subordinate .hist_add_user_message (UserMessage (message = message , attachments = []))
2724
25+ # set subordinate prompt profile if provided, if not, keep original
26+ prompt_profile = kwargs .get ("prompt_profile" )
27+ if prompt_profile :
28+ subordinate .config .prompts_subdir = prompt_profile
29+
2830 # run subordinate monologue
2931 result = await subordinate .monologue ()
3032
31- # reset prompt profile
32- self .agent .config .prompts_subdir = agent_prompt_profile
33-
3433 # result
35- return Response (message = result , break_loop = False )
34+ return Response (message = result , break_loop = False )
0 commit comments