You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
[Bug] 2.5.2: completed subagent cards have no transcript after resuming a pre-2.5 session #4740
Subagents that are still running do render content. Historical ones are always empty. Ctrl-O does not expand them either: computeHiddenContent() returns false early for isSingleSubagentView().
Same on the web/desktop client: the subagent panel opens empty. The frontend already has openAgentPanel, agentPanelTurnsOf, agentPanelHasMore, loadOlderAgentMessages (paginated history), but there is nothing to page through.
Data is still there
The session has 9 subagent directories. The main wire holds 220 subagent.spawned links, and every agents/<id>/wire.jsonl still contains the full conversation. Reading those files by hand is currently the only way to see the history.
Steps to reproduce
On 2.4.1, run a session that spawns a subagent and let it finish.
Upgrade to 2.5.2.
kimi --session <id>, or open the session in web/desktop.
The subagent card shows · 0 tools and no body.
Likely cause
The TUI resume path calls:
harness.resumeSession({ id,replayTurnLimit: 11})
with no includeSubagents. The session layer only materializes subagent replay behind:
if(replay?.includeSubagents===true){/* walk agents/*, create + resumedAgentState */}
so historical subagent state is never loaded. 2.4.1 makes the same call, but its card did not display detail. 2.5.0 switched to the SubAgent card (changelog: "优化长时间运行的 subagent 卡片,输出持续增长时保持响应"), which surfaces the gap.
Suggestion
Load subagent detail on demand instead of eagerly:
keep resume as it is — summary line only, no eager folding;
when an agent is opened, fold that agent's agents/<id>/wire.jsonl and page it by turns (e.g. 10 turns per page), reusing agentPanelHasMore / loadOlderAgentMessages, shared by TUI and web.
Default rendering cost stays the same; only the opened agent pays the fold, so old sessions with hundreds of subagents are not slowed down. A one-line stopgap is to pass includeSubagents: true on resume, but folding every subagent of an old session gets slow, so it only works short-term.
Expected
Resuming a pre-2.5 session and opening any completed subagent shows its tool calls and messages, with older turns loadable, without slowing the default view.
Activity