fix default prompt profile

frdel committed Jun 26, 2025 at 09:46 UTC 9f54f4f0ff73c4a94b2dbd1848da6c2e7b0bf44f
1 file changed +11 -12
python/tools/call_subordinate.py
+11 -12
@@ -10,26 +10,25 @@ class Delegation(Tool):
10 self.agent.get_data(Agent.DATA_NAME_SUBORDINATE) is None
11 or str(reset).lower().strip() == "true"
12 ):
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
16 sub.set_data(Agent.DATA_NAME_SUPERIOR, self.agent)
17 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"
20
21 # add user message to subordinate agent
22 subordinate: Agent = self.agent.get_data(Agent.DATA_NAME_SUBORDINATE)
23 subordinate.hist_add_user_message(UserMessage(message=message, attachments=[]))
24
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 +
30 # run subordinate monologue
31 result = await subordinate.monologue()
32
31 - # reset prompt profile
32 - self.agent.config.prompts_subdir = agent_prompt_profile
33 -
33 # result
35 - return Response(message=result, break_loop=False)
34 + return Response(message=result, break_loop=False)
\ No newline at end of file