# feat\(clients\): display optional subagent context snapshots · PR \#21643 · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/pull/21643)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

State: open

Source repository: pingdotgg/t3code

Source branch: claude-context/client-support

Target branch: main

Head commit: 90df6f1425d462c234423abeab9b51783340ed0e

[Discussion and reviews](https://git.cafe/pingdotgg/t3code/pull/21643)

[Commits](https://git.cafe/pingdotgg/t3code/pull/21643/commits?format=markdown)

[Files changed](https://git.cafe/pingdotgg/t3code/pull/21643/diffs?format=markdown)

## Description

---

Claude subagent context snapshots disappear before they reach lineage and timeline tooltips. This layer adds an optional wire field and shared formatting, then displays the latest reported context tokens and tool uses in web tooltips and mobile Agents/transcript rows. Missing snapshots stay hidden; zero and decreases remain visible. Settled task snapshots hide while a child follow-up is active or queued. Lineage also drops the older snapshot when it overlays a newer finished child run.

Rebuilt from Gigioxx’s [#15446](https://github.com/pingdotgg/t3code/pull/15446) against current main. The [maintainer takeover](https://github.com/pingdotgg/t3code/pull/15446#issuecomment-6264079161) covers this focused restoration. Related [#15429](https://github.com/pingdotgg/t3code/issues/15429) remains open: cumulative cost and maximum-window display are outside this change. The next stack layer supplies Claude snapshots; this layer stands alone when providers omit them.

Verification: 60 focused Node tests passed (runtime 19→20, contracts 38 unchanged, web Node 2 unchanged); the new codec/projection case fails on main. All 18 existing browser cases passed; one was extended to cover usage, decreases, live-follow-up hiding and a newer finished child run. Scoped contracts, runtime, web and mobile typechecks plus targeted lint/format passed. One new runtime test, no new browser test cases. Two fresh whole-stack review rounds by Claude Opus 5.5 and GPT-6 Sol completed; the second round found no blockers after fixes for workflow totals mislabeled as context and stale context beside a newer finished child run.

Before/after proof: actual main production sources at `1451e7cb23` versus rebuilt stack at `93c22b64a6` (client layer `90df6f1425`). Both use identical synthetic isolated data, a 1280×800 viewport, scroll state and font fallback. The running web app verified both timeline and lineage hover cards. Synthetic data exercises rendering; separate adapter tests exercise provider frames. No fresh Claude CLI/account, real SDK workflow, remote/relay/tunnel, macOS, Windows, iOS, Android or Electron desktop session was verified. Mobile layout was inspected and typechecked, with usage on its own line so model names cannot squeeze it out.


Before — timeline tooltip on main:

![Before: timeline tooltip omits context usage](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/46c0ebf53e2d3e25/browser-screenshot-localhost-mvf3s8k7-9d7f69ab.png)

After — timeline tooltip with the rebuilt client:

![After: timeline tooltip shows 41.1K context and 2 tool uses](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/736302ee6fdd4097/browser-screenshot-localhost-mvf3tqs8-18cd3456.png)

Before — lineage tooltip on main:

![Before: lineage tooltip omits context usage](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/dc6140633f6836c6/browser-screenshot-localhost-mvf3sgsr-e5e2ebf0.png)

After — lineage tooltip with the rebuilt client:

![After: lineage tooltip shows 41.1K context and 2 tool uses](https://gh-file-drop-api-prod-mi5fy3sowv63ufte.pinglabs.workers.dev/f/4c71cb7bea1ac220/browser-screenshot-localhost-mvf3uuju-8383e1e9.png)

Implemented with GPT-6.1 Sol through the Codex harness; tests by GPT-6 Astra; adversarial reviews by Claude Opus 5.5 and GPT-6 Sol through T3 Code delegation.

