Skip to content

Column Split View (Chat + Terminal) #1741

Closed

Description

@EricsenSemedo

PRD: Column Split View (Chat + Terminal)

Problem

Currently T3 Code shows the terminal as a bottom drawer that overlays the chat. In canvas mode, this breaks the spatial model — the terminal should be part of the column layout.

Goals

  • Mod+W toggles terminal stacked below chat in the focused column
  • Niri-style column stacking: chat on top, terminal on bottom
  • Resizable split with spring-animated resize
  • Collapse/expand with smooth transitions

User Stories

  • As a user, I want to see chat and terminal simultaneously in one column
  • As a user, I want to resize the split by dragging
  • As a user, I want to collapse the terminal back to full chat with a shortcut

Requirements

  • Keybind: Mod+W (matches Niri's stack-in-column shortcut)
  • Split ratio persisted per-thread in localStorage
  • Spring-animated resize (using @react-spring/web)
  • Terminal retains state across collapse/expand
  • Default split: 60% chat / 40% terminal

Success Metrics

  • Terminal visible alongside chat without leaving canvas view
  • Resize feels smooth (spring physics, no jank)
  • Terminal state preserved across split toggles

Scope

  • In scope: Vertical split within CanvasColumn, resize handle, Mod+W keybind
  • Out of scope: Horizontal split, multiple terminals per column, drag-to-detach

Priority

Later milestone (after canvas MVP)

Activity

  1. juliusmarminge commented on Jun 20, 2026

    @juliusmarminge
    Member

    Chat and terminal can now be shown side by side through the unified right panel, with horizontal and vertical terminal split commands.

    This was closed as part of a large repo-wide maintenance sweep. If you think it's still relevant, please reopen.

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

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions