When running subagents with (run_in_background=True), no max_turns, some subagents send SubagentStop right after receiving a tool result successfully. In observed examples, the context window is not close to being filled.
{"parentUuid":"7df5ab02-b2ad-4f42-a8fc-f8d94ee2a775","isSidechain":true,"userType":"external","cwd":"/home/user","sessionId":"a0c74ac8-27a4-4ed7-87b3-4d6c9527bfaa","version":"2.1.59","gitBranch":"HEAD","agentId":"aada4f57f1757310e","slug":"abundant-wibbling-swing","type":"user","message":{"role":"user","content":[{"tool_use_id":"toolu_01XHeaLcTb3KAtKfEMEndmej","type":"tool_result","content":[{"type":"text","text":"original tool result removed for brevity"}]}]},"uuid":"01da8465-6438-4e98-94c7-3808ac37da08","timestamp":"2026-03-03T11:27:09.707Z","sourceToolAssistantUUID":"7df5ab02-b2ad-4f42-a8fc-f8d94ee2a775"}
{"parentUuid":"01da8465-6438-4e98-94c7-3808ac37da08","isSidechain":true,"userType":"external","cwd":"/home/user","sessionId":"a0c74ac8-27a4-4ed7-87b3-4d6c9527bfaa","version":"2.1.59","gitBranch":"HEAD","agentId":"aada4f57f1757310e","slug":"abundant-wibbling-swing","type":"progress","data":{"type":"hook_progress","hookEvent":"SubagentStop","hookName":"SubagentStop","command":"callback"},"parentToolUseID":"5edf13c0-4c7d-422d-a2e6-56495879cbc0","toolUseID":"5edf13c0-4c7d-422d-a2e6-56495879cbc0","timestamp":"2026-03-03T11:27:13.545Z","uuid":"e29cec7e-67bd-4ee4-9d8b-4bb52aae5343"}
3702:2026-03-03T11:27:13.538Z [DEBUG] Stream started - received first chunk
3703:2026-03-03T11:27:13.544Z [DEBUG] Getting matching hook commands for SubagentStop with query: research-assistant
3704:2026-03-03T11:27:13.544Z [DEBUG] Found 1 hook matchers in settings
3705:2026-03-03T11:27:13.544Z [DEBUG] Matched 1 unique hooks for query "research-assistant" (1 before deduplication)
3706:2026-03-03T11:27:13.623Z [DEBUG] Writing to temp file: /home/user/.claude.json.tmp.442.1772537233623
I would expect the subagent to continue to work here, or at the very least, provide a ResultMessage which explains why it stopped. This looks like more of a bug than agent behavior.
When running subagents with (run_in_background=True), no max_turns, some subagents send SubagentStop right after receiving a tool result successfully. In observed examples, the context window is not close to being filled.
This is one such example from the subagent JSONL log:
Debug log
I would expect the subagent to continue to work here, or at the very least, provide a ResultMessage which explains why it stopped. This looks like more of a bug than agent behavior.