agent-ui: collapse streamed thinking_tokens ticks into one live row
claude streams a running 'estimated_tokens' counter as system/thinking_tokens events — many per turn (thousands in a long turn). renderStream rendered each as a '⚙ thinking_tokens' note, flooding the terminal scrollback. Coalesce consecutive ticks into a single '🧠 thinking … ~N tokens' note row that updates in place; reuse the row only while it's still the last one rendered (nextElementSibling == null) so any other event starts a fresh one. Closes #1818.
This commit is contained in:
parent
6bb976ec72
commit
63a79d76ba
2 changed files with 31 additions and 0 deletions
|
|
@ -71,6 +71,13 @@ suffix, so the terminal degrades cleanly against older event shapes.
|
|||
|
||||
1. Drops `system/init`, `rate_limit_event`, `result` (noise /
|
||||
handled elsewhere — `result` powers the `cost` badge).
|
||||
1a. `system/thinking_tokens` (claude streams a running
|
||||
`estimated_tokens` counter while thinking — many per turn) →
|
||||
collapses into a **single** `🧠 thinking … ~N tokens` `.note`
|
||||
row that updates in place. Consecutive ticks reuse the row only
|
||||
while it's still the last one rendered (`nextElementSibling ==
|
||||
null`); any other event after it makes the next tick start a
|
||||
fresh row. Avoids a note-per-tick scrollback flood.
|
||||
2. `subtype == "task_started" | "task_notification"` →
|
||||
`renderTaskEvent` (subagent activity gets the `⌁` glyph).
|
||||
3. `type == "assistant"` → walk `message.content[]`:
|
||||
|
|
|
|||
Loading…
Reference in a new issue