Merge pull request #298 from neystan/fix/s07-reminder-tool-result-order

fix: prevent tool_result order corruption in s07 reminder injection
This commit is contained in:
gui-yue
2026-05-29 12:43:21 +08:00
committed by GitHub

View File

@@ -344,13 +344,10 @@ def agent_loop(messages: list):
global rounds_since_todo
while True:
if rounds_since_todo >= 3 and messages:
last = messages[-1]
if last["role"] == "user" and isinstance(last.get("content"), list):
last["content"].insert(0, {
"type": "text",
"text": "<reminder>Update your todos.</reminder>",
})
messages.append({"role": "user",
"content": "<reminder>Update your todos.</reminder>"})
rounds_since_todo = 0
response = client.messages.create(
model=MODEL, system=SYSTEM, messages=messages,
tools=TOOLS, max_tokens=8000,