Subagent transcripts are inlined verbatim and uncapped into the parent session export
- 主要语言
- Shell
- 星标
- 11.2k
- 派生
- 1.9k
- 平均合并
- 14 小时 16 分钟
- 30 天内合并 PR
- 6
描述
## Describe the feature or problem you'd like to solve
When a session uses subagents, the parent's exported transcript inlines the **complete** transcript of every subagent verbatim, with no summarization and no size bound. Each subagent's full tool-call output is embedded into the parent, and a subagent that runs more than once (e.g. a retried phase) has its full transcript embedded again on each run.
Concretely, a single exported session from a multi-lane review flow came out to ~3.2 MB / ~58k lines: roughly 66% of it was inlined subagent transcripts, and a phase that ran three times added another ~30% because each run's full transcript was inlined again. There's currently no way to make the export summarize or externalize subagent transcripts — the parent always embeds the full child log.
## Proposed solution
Add a way to keep the parent export bounded when subagents are involved. Any one of these would help:
- Summarize each subagent in the parent export (final message + tool-call count + key results) instead of inlining its full log.
- Externalize each subagent transcript to its own artifact and reference it from the parent, so full detail is preserved but not inlined.
- A flag/setting to choose inline vs. summarized vs. externalized export.
Full detail stays recoverable; the parent transcript stops growing unbounded with each subagent and each retry.
## Example prompts or workflows
- A multi-subagent run (e.g. several parallel analysis/review lanes): today the parent inlines every lane's entire transcript; a summary plus per-lane artifacts would keep the parent readable.
- Re-running an expensive sub-step several times in one session: today each run's full transcript is re-inlined, multiplying size; a summarized/externalized export records each run compactly.
- Long sessions in general: a bounded parent transcript stays reviewable, where a fully-inlined one becomes unmanageable.
## Additional context
- Affected version: `copilot` 1.0.65 (Homebrew cask).
- The behavior appears to come from the export renderer that joins each subagent's timeline entries and embeds the full tool-call output for every entry, with no truncation or summarization branch in that path.
- OS: macOS (ARM).
贡献指南
评估
这个 Issue 还没有评估数据。