feat: Add Ctrl+O live process stdout viewer#75
Merged
Conversation
ec1525e to
8451d59
Compare
- Add onProcessStdout callback chain through executor → bash-handler → session → App - Stream real-time stdout/stderr from bash commands to UI ref (capped at 1MB) - Add ProcessStdoutView fullscreen overlay with scroll support - Bind Ctrl+O in PromptInput to toggle the stdout view - Footer hint shows 'ctrl+o view output' when a process is running
553cb84 to
5e3540c
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
变更内容
ProcessStdoutView全屏覆盖层组件,实时展示运行中 bash 命令的 stdout/stderr 输出流bash-handler的 stdout/stderr data 事件中,通过onProcessStdout回调链将输出块实时推送至 UI 层executor/session/App之间建立onProcessStdout回调传递链路,以Map<pid, string>存储并限制每进程上限 1MBPromptInput绑定 Ctrl+O 快捷键:有运行中的进程时弹出 stdout 查看器,无进程时提示 "No running process to inspect"· ctrl+o view output提示背景
当 LLM 执行长时间 bash 命令(如
npm install、编译等)时,用户无法看到实时输出,只能等待命令完成后查看一次性结果。本次改动引入一个非侵入式的全屏覆盖层,允许用户在命令运行期间按 Ctrl+O 随时查看流式输出,提升交互感和可观测性。验证
截图
未展开状态:命令右侧提示 ctrl+o 展开

展开状态(可以使用 ctrl + o or Esc 收起):
