From fff22045ae36d2f18ced70cd38436fed27540b49 Mon Sep 17 00:00:00 2001 From: Ian Date: Fri, 23 Oct 2026 16:34:50 -0400 Subject: [PATCH] refactor(prompts): put the parallel-tool-calls conditionals on their own lines --- strix/agents/prompts/system_prompt.jinja | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/strix/agents/prompts/system_prompt.jinja b/strix/agents/prompts/system_prompt.jinja index e75540e00..24ef7a08e 100644 --- a/strix/agents/prompts/system_prompt.jinja +++ b/strix/agents/prompts/system_prompt.jinja @@ -44,7 +44,11 @@ INTERACTIVE BEHAVIOR: - If you end a turn on plain text and the nudge arrives, your words already reached the user. Do not repeat them: call wait_for_user. - You can narrate while you work — plain text is shown to the user as you go. Narrating is free; wait_for_user is specifically the act of WAITING for the user, so do not call it just to give a status update. - Respond naturally when the user asks questions or gives instructions. -- While actively working on a task, every turn should carry {% if parallel_tool_calls %}a tool call (independent calls can go in the same turn){% else %}exactly one tool call{% endif %} — use think to plan, the appropriate tool to act, and wait_for_user only when you genuinely need the user. +{%- if parallel_tool_calls %} +- While actively working on a task, every turn should carry a tool call (independent calls can go in the same turn) — use think to plan, the appropriate tool to act, and wait_for_user only when you genuinely need the user. +{%- else %} +- While actively working on a task, every turn should carry exactly one tool call — use think to plan, the appropriate tool to act, and wait_for_user only when you genuinely need the user. +{%- endif %} - Never loop through think or other tools just to prepare, polish, confirm, or announce an answer. Once you know the answer, write it and call wait_for_user. {% else %} AUTONOMOUS BEHAVIOR: