Opus 5: long agentic turns degrade to tool-calls-only, hours with no assistant text (not the #84153 transcript loss)
Summary
In long single-turn agentic sessions, claude-opus-5 sometimes stops emitting assistant text entirely: hours of tool_use blocks with interleaved thinking and no prose between tool calls. The session keeps working correctly (tools, hooks, task completion all normal), but a human supervising it has nothing to read, and since thinking content is omitted from display and transcript, the session is completely unobservable while it works.
Environment
- Claude Code 2.1.223 and 2.1.224, macOS (Darwin 24.5), interactive TUI under tmux
- Model
claude-opus-5with 1M context, effort high, bypass permissions - Autonomous workflow: one user prompt starts a single working turn that runs 1-4 hours, tool-heavy (shell, file edits, simulator UI automation with screenshot reads)
Symptom
Two sessions on consecutive days over the same recurring workload:
- Session A (2.1.223): 303 assistant messages, 193
tool_use, 3 text blocks, all in the final minutes of a ~3.5h turn - Session B (2.1.224): 352 assistant messages, 242
tool_use, 2 short text blocks in the first 22 minutes, then zero text for the remaining ~100 minutes until completion
18 comparable sessions (same version, model, effort, near-identical ~74k-token opening prompt) emitted 10-97 mid-turn text blocks over similar durations. So this is an occasional degeneration into an act-only cadence, not the model's normal behavior.
Ruled out
- The #84153 / #77651 transcript text-loss family: I could not reproduce it on 2.1.224. A
-p --output-format stream-jsonrun produced thetext -> thinking -> tool_useshape three times and every text block persisted to the session.jsonl; an interactive TUI run producing the same shape both rendered and persisted all narration. The silent sessions' transcripts therefore look trustworthy: the model genuinely emitted no text. - Context size: a prose-emitting sibling session peaked at 576k tokens; one silent session peaked at 288k.
- Vision content: a sibling session ingested 18 screenshots and wrote 72 text blocks after the first one.
- Prompt/config: identical opening prompt template, same effort setting, no user input mid-turn.
Impact
Supervised-autonomy setups steer by reading mid-turn narration. When it stops, and thinking is invisible at every layer, the operator flies blind for hours and can only evaluate correctness after the turn ends.
Ask
- Is there guidance or a planned model-side fix for keeping inter-tool narration alive in very long single turns? The system prompt's communication guidance appears to lose to whatever cadence the model settles into early in the turn.
- An observability fallback would also resolve the pain: a supported way to surface summarized thinking in the TUI and transcript (equivalent of
display: "summarized") so silent stretches remain inspectable.
No minimal repro; it needs an hours-long agentic turn on a real workload and reproduces intermittently on the same workload. I can share per-message block-shape statistics on request (not full transcripts).