Assistant text before a tool call (e.g. ask_user popup) is hidden in the collapsed "Thought for…" block instead of rendering as chat
还没有人认领这个 Issue。
- 主要语言
- Shell
- 星标
- 11.2k
- 派生
- 1.9k
- 平均合并
- 14 小时 16 分钟
- 30 天内合并 PR
- 6
描述
Describe the bug
In interactive mode, any assistant chat text written in the same turn before a tool call (most notably the ask_user question popup) is never rendered as a visible chat message. It is instead folded into the collapsed "Thought for Ns" reasoning block, where it stays hidden unless manually expanded — even after the tool call resolves.
The practical impact: when the agent writes explanatory context ("here's the quoted text / options / proposal…") and then opens an ask_user popup referring to that context, the user only sees the popup and cannot see the text it refers to.
Affected version
1.0.73 (Copilot app / workspace UI; copilot --version in shell reports 26.5.2)
Steps to reproduce the behavior
Ran a series of controlled tests with the agent in interactive mode:
- Agent emits a chat message containing a marker + blockquote, then calls
ask_userin the same turn → user sees only the popup; the text never appears, even after answering. It is only findable by expanding the "Thought for Ns" block. - Agent emits a text-only turn (no tool calls) → text renders normally as visible chat.
- Agent calls a tool first, then writes text after the tool result in the same turn → text renders normally.
- Markdown inside the
ask_userquestion field (blockquote, inline code, bold) renders correctly, and long question text is not truncated — so the popup itself is fine; only preceding same-turn text is lost.
Expected behavior
Assistant text preceding a tool call in the same turn should render as a normal, permanently visible chat message (before or alongside the popup), not be classified as model reasoning/thinking and collapsed.
Additional context
- Operating system: macOS (Darwin, ARM)
- Surface: Copilot desktop app (Tauri workspace UI) project session, interactive mode
- The misclassification appears to be in how the UI segments a turn: everything prior to the first tool call is treated as part of the thinking block rather than as assistant output.
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
首先,在交互模式下复现该问题:在调用 ask_user 之前先输出 assistant 文本;然后检查 workspace UI 如何围绕第一次工具调用对一轮进行分段。完成的标准是:之前的 assistant 文本会渲染为永久可见的聊天消息,同时 ask_user 弹窗继续正常工作。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- tauri
- 领域
- desktop, frontend
- Issue 类型
- 缺陷
- 难度
- 3/5
- 预计耗时
- 1-2 天
- 活跃度
- 冷清
- 描述清晰度
- 基本清楚
- 新手友好度
- 58/100