Skip to content

Expand the shell pane into a shared TUI and GUI workspace - #730

Open
bborn wants to merge 7 commits into
mainfrom
feature/workspace-panel
Open

bborn wants to merge 7 commits into
mainfrom
feature/workspace-panel

Conversation

@bborn

@bborn bborn commented Sep 15, 2026

Copy link
Copy Markdown
Owner

Summary

Task detail now keeps the conversation and agent on the left with a flexible workspace on the right. Shell remains the default; the launcher opens cached PR details, workspace files, and rendered Markdown. The TUI exposes the same providers with w and keyboard tab navigation.

  • Shared Go provider registry, canonical resource identity, persistent task tabs, CLI commands, HTTP routes, and renderer parity coverage.
  • GUI split resizing and phone workspace toggle; independent terminal mirrors preserve task-owned sessions and dimensions.
  • TUI uses Bubbles help/key.Binding for contextual shortcuts and list for launcher/file navigation, fuzzy filtering, and pagination. Alt+H expands help; no new dependencies.
  • TUI workspace helper preserves the agent and shell jobs. The GUI reuses a shell parked by the TUI instead of starting a duplicate.
  • Bounded file previews confined to the task workspace; remote previews use the recorded placement and a bounded Python protocol.

Validation

  • Full Go suite: go test -p 2 ./... passed.
  • Go 1.26-compatible golangci-lint v2.13.2: 0 issues.
  • GUI build and embedded GUI binary build passed.
  • Existing pane QA: 34 view checks, 23 key checks, 32 edge checks passed.
  • Bubbles refactor: UI/parity/CLI tests and lint passed; new regressions cover paging, filtering, help sizing, and shell key isolation.
  • New ty-qa-workspace.sh passed (rerun after the Bubbles refactor, including expanded help and file filtering): launcher, PR, Markdown, duplicate opens, live shell job survival, and helper cleanup.
  • Chromium desktop and phone layout checked using isolated harness fixtures. Verified shared parked-shell input and close/reopen survival, keyboard resizing, and no browser errors.

Full QA report · Usage and provider contract

Scope and limits

This first provider set is compiled into TaskYou; runtime third-party plugins and browser embedding remain follow-ups. PR details use the existing cache. Terminal mirrors use the task's existing dimensions; native TUI shell access remains available with \. The native Tauri wrapper and a live remote SSH host were not exercised; the GUI browser surface and remote file protocol were tested.

Screenshots

Generated from synthetic QA harness fixtures and published with ty-qa-publish.sh.

gui-launcher
gui-pr
gui-markdown
gui-mobile

tui-launcher
tui-help
tui-pr

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant