Ace map · workspace

Workspace

Arrange windows, panes and tabs, and get around with the palette and shortcuts.

testedvisualpartialbrokenuntestedmissingplannednopen gap
^600

Move between views

visual
  1. ^601

    Open Dashboard, Channels, Issues or PRs from the rail

    visual
    Rail (left edge)

    Click an icon in the rail.

    The main area switches; Channels, Issues and PRs bring their own sidebar, Dashboard has none.

    1 While projects load, the account avatar still shows a placeholder A (left by githubnext/ace#639).

  2. ^602

    Switch views with ⌘1–⌘4

    partial
    ⌘1 Dashboard · ⌘2 Channels · ⌘3 Issues · ⌘4 PRs

    Press the shortcut anywhere in the window. Ctrl works in place of ⌘ in a browser.

    Same as clicking the rail. The rail tooltips and the palette show the keys.

    2 ⌘3 and ⌘4 do nothing in a project without GitHub, with no hint.

  3. ^603

    Expand or collapse the navigation with ⌘B

    tested
    ⌘B, or palette → View: Toggle Navigation

    The rail widens to show labels; again collapses it. It starts collapsed in every new window.

  4. ^604

    Hide or show the channels sidebar

    tested
    ⌘⇧B, the sidebar button at the left of the tab strip, or palette → View: Toggle Channels Sidebar

    The project's channel list slides away and the channel takes the width.

  5. ^605

    Resize the channels sidebar

    tested
    Right edge of the sidebar

    Drag the edge. Double-click it to go back to the default width.

    The width is kept for the browser profile (200 → 314 → 200 px in this pass).

  6. ^606

    Open the details sidebar

    tested
    Channel → right end of the tab strip → Toggle details sidebar

    Summary, changes, branch and channel facts slide in on the right; × or the same button closes it.

  7. ^607

    Go back to the previous view

    missing

    Expect browser Back, swipe or ⌘[ to return to the last view or channel.

    3 Views and channel picks never touch browser history (no pushState anywhere in apps/app/src), so Back leaves the app instead of going back a view.

^608

Pick a project

visual
  1. ^609

    Switch project from the dashboard

    tested
    Dashboard → project chip above the greeting

    Open the chip and choose a project.

    The menu lists All Projects, Open folder…, Clone from URL… and every project; the dashboard reloads for the choice.

  2. ^610

    Switch project from the channels sidebar

    tested
    Channels → sidebar header → project name

    The same menu; the choice replaces the channel list and is remembered per window.

  3. ^611

    See every project at once

    visual
    Channels → project menu → All Projects

    Pinned channels first, then each project's ten most recent channels under its name, with + to start one there.

    4 All Projects only applies to Channels: switching to Dashboard, Issues or PRs shows the last single project (proj) again.

^612

Catch up on the dashboard

visual
  1. ^613

    Open the dashboard

    tested
    Rail → Dashboard, or ⌘1

    A greeting, a composer to start a channel, then Needs you, Pick back up and Team pulse when they have rows, then the project's channels.

  2. ^614

    See which runs need you

    closed

    Closed: Removed with the Dashboard's Needs you section in githubnext/ace#579 (Q153).

    Dashboard → Needs you

    Channels whose run you started failed or is waiting on your answer, and PRs waiting on your review.

    5 Opening the channel drops it from Needs you though the question is still unanswered (ws-ask: 1 row before visiting, 0 after, question pending).

    6 A browser profile only counts runs that end after its first visit (attention.ts:12), so a phone or new browser opened while a question waits never lists it.

  3. ^615

    Open a channel from Needs you

    closed

    Closed: Removed with the Dashboard's Needs you section in githubnext/ace#579 (Q153).

    Dashboard → Needs you → row

    The channel opens on the Channels view.

  4. ^616

    See your open PRs and assigned issues

    tested
    Dashboard → Pick back up (GitHub projects only)

    Your open PRs and issues assigned to you, each linked to its channel if one has the branch. With none, "None of your pull requests or assigned issues are open."

    7 Only the empty state was seen; the host's GitHub account had no open PRs or assigned issues in githubnext/ace.

  5. ^617

    Start a channel from a PR or issue

    tested
    Dashboard → Pick back up → Open in a channel

    A new channel starts with a prompt about the item; Continue opens the channel that already has its branch.

    8 Continue is missed when the channel works the PR under another local branch: after Open in a channel on githubnext/ace-testbed#2, its lane glad-orbit/add-moon pushed to add-moon, and the dashboard still offered Open #2 in a channel, inviting a second channel. Continue on #6 opened mars-greeting as expected.

  6. ^618

    Refresh from GitHub

    tested
    Dashboard → Pick back up → ↻

    The icon spins and is disabled while the list reloads.

  7. ^619

    See what teammates are doing

    tested
    Dashboard → Team pulse

    Teammates active in the project since your last visit, with their channels.

    9 Re-check, Canary 0.0.54.93: Hello-World's pulse credited the teammate (samechocolixir / #b-hello / Finished in #pair-hello-2), but entries carry no time or description, and the Finished in line vanished on a reload before the owner opened the channel.

  8. ^620

    Open a channel from the dashboard list

    tested
    Dashboard → Channels → row

    The channel opens. Rows show a raised hand when a run needs you, a count of @mentions of you and an unread dot (lab x4: 2 and a dot after ace-demo-rivera mentioned @iamnbutler twice).

^621

Notice a finished run

visual

Runs you started that end while you aren't watching the channel.

  1. ^622

    See the window glow

    partial

    When a run you started ends in another channel while the window has focus, the window edge glows green for about two seconds.

    10 With the window focused the study saw no glow; coming back from another tab showed a brief green tint.

  2. ^623

    See the unread dot

    tested
    Channels sidebar → row; palette → row

    A dot on the channel's icon, and "Unread" (or "Busy" while running) beside it in the palette.

  3. ^624

    Get a desktop notification

    untested

    With the window unfocused, macOS shows "Agent finished", "Agent run failed" or "Agent is waiting for your answer" under the channel's name.

    11 Only the desktop app notifies; a browser or phone gets no notification.

  4. ^625

    Clear the mark by opening the channel

    tested

    Viewing the channel with the window focused marks the run seen.

^626

Work with tabs

visual

Each channel window has a Chat tab plus any Diff and Terminal tabs, saved per channel.

  1. ^627

    See the Chat tab

    tested

    The channel's name with its place icon; it can't be closed or renamed (Rename and Close are disabled).

  2. ^628

    Open a Diff or Terminal tab

    tested
    Tab strip → + (New tab)

    Choose Chat, Diff or Terminal.

    The tab opens in that pane and takes focus; a second of a kind numbers them (Terminal 1, Terminal 2). Chat shows the existing Chat tab.

  3. ^629

    Switch tabs

    tested

    Click a tab, or with a tab focused press ←/→, Home or End.

  4. ^630

    Rename a tab

    tested
    Right-click a tab → Rename

    Type a name (up to 80 characters) and press Enter. An empty name restores the default.

    The tab shows the new name, also in the palette and in ace tabs.

  5. ^631

    Close a tab

    tested

    Hover and click its ×, right-click → Close, or focus it and press Backspace or Delete.

    The tab goes; a Terminal tab's shell is released.

  6. ^632

    Jump to a tab from the palette

    tested
    ⌘K → type the tab's name

    The channel's other tabs are listed under Tab; choosing one shows it.

  7. ^633

    Get a Diff tab when changes appear

    tested

    The first time the chat's lane has changes, a Diff tab opens behind the Chat tab; closing it keeps it closed until the changes clear and new ones appear.

    12 Still logged after #587: React error #185 (Maximum update depth exceeded) fired once about 0.2 s after sending an Ace message in a channel with a Diff tab open; the page kept working. Three Chat-mode sends in a channel without a Diff tab logged none.

    13 Closed while changes remained, it stayed closed through two new changes, as designed; testers expected it back.

  8. ^634

    Come back to the same layout

    tested

    Tabs, names, panes and sizes come back after a reload, per channel and per window.

  9. ^635

    Open, close or cycle tabs from the keyboard

    missing

    Expect ⌘T, ⌘W or Ctrl-Tab.

    14 No tab shortcuts exist: the only window-level keys are ⌘1–4, ⌘B, ⌘⇧B, ⌘K, ⌘O and ⌘, (navigation.tsx:152, palette.tsx:103).

^636

Arrange panes

visual

Split a channel window into panes, each with its own tab strip.

  1. ^637

    Split right or down

    tested
    Pane's tab strip → Split right / Split down (right end)

    A Blank pane opens beside or below with Chat, Diff and Terminal to choose from.

  2. ^638

    Fill a blank pane

    tested
    Blank pane → Chat / Diff / Terminal

    The pane becomes that tab; Chat moves focus to the Chat tab and closes the blank.

    15 Chat in a blank pane closes the blank when the chat is already open, without saying so.

  3. ^639

    See why a split is unavailable

    tested

    The split button is disabled with "Too little space" when panes would fall under their minimum (Chat 450 px, others 350 px).

  4. ^640

    Resize panes

    visual

    Drag the line between panes. Esc during the drag puts it back.

    Neighbouring panes grow and shrink, stopping at their minimums.

  5. ^641

    Reorder tabs

    tested

    Drag a tab along its strip.

    A green bar marks where it lands.

  6. ^642

    Move a tab to another pane

    tested

    Drag a tab onto another pane's middle or its tab strip.

    The pane highlights; the tab joins it. A pane left with no tabs closes.

  7. ^643

    Split by dragging a tab to an edge

    tested

    Drag a tab to a pane's left, right, top or bottom edge.

    Half the pane highlights and drops into a new pane there, or reads "Too small" and refuses. Esc cancels the drag.

  8. ^644

    Use a narrow window

    visual

    Below the md breakpoint, or when panes no longer fit, every tab folds into one strip with no split buttons; widening restores the panes.

^645

Use the command palette

visual
  1. ^646

    Open the palette

    tested
    ⌘K (Ctrl-K in a browser)

    Search channels, tabs and actions (Search channels, tabs, and actions…, shown in full); ⌘K again or Esc closes it, ↑/↓ move and Enter runs.

    16 ⌘K in the composer adds a link and in a terminal clears it, so the palette needs focus elsewhere first.

  2. ^647

    Find a channel

    tested

    Type part of a name or summary.

    Matching channels, grouped by project; other projects' channels appear only once you search. "Nothing matches" when none do.

  3. ^648

    Run a window action

    tested

    Go to Dashboard, Channels, Issues and Pull Requests; Settings; Toggle Navigation; Toggle Channels Sidebar; Open Folder…; Clone from URL…; New Channel in <project>; Check for Updates… (desktop).

    17 New Channel in <project>, Clone from URL… and Check for Updates… weren't run from the palette in this pass.

^649

Use more than one window

partial
  1. ^650

    Open a new window

    tested
    File → New Window (⌘N), desktop app

    A window cascaded 24 px from the current one, starting on the same view, project and layout.

    18 Tested on Canary 0.0.51.85 (2026-10-22 study).

  2. ^651

    Keep each window's own view

    tested

    Each window remembers its view, project and layouts through reloads; a new window or browser tab starts from the last change made in any window.

    19 Tested on Canary 0.0.51.85 (2026-10-22 study).

  3. ^652

    Zoom the window from the title bar

    tested

    Double-click empty space in the top 28 px.

    20 Canary 0.0.51.85: the green and yellow buttons report disabled; only double-clicking the top strip zooms.

  4. ^653

    Close or minimize a window from the keyboard

    missing

    Expect ⌘W and ⌘M.

    21 The desktop menu has no Window menu and no Close or Minimize items (apps/desktop/src/index.ts:175); traced only, not tried in the app.

^654

Use the desktop menus

untested

macOS menu bar items in the desktop app; each forwards to the same window action as its shortcut.

  1. ^655

    Ace menu

    tested

    About Ace, Show Ace, Settings… (⌘,), Check for Updates…, Start/Restart Ace Helper, Ace Helper Settings…, Show Ace Helper Log, Quit Ace (⌘Q).

    22 Tested on Canary 0.0.51.85 (2026-10-22 study).

  2. ^656

    File menu

    tested

    New Window (⌘N), Open Folder… (⌘O), Clone from URL….

    23 Tested on Canary 0.0.51.85 (2026-10-22 study).

  3. ^657

    Edit menu

    tested

    Undo, Redo, Cut, Copy, Paste, Select All.

    24 Tested on Canary 0.0.51.85 (2026-10-22 study).

  4. ^658

    View menu

    partial

    Dashboard (⌘1), Channels (⌘2), Issues (⌘3), Pull Requests (⌘4), Toggle Navigation (⌘B), Toggle Channels Sidebar (⌘⇧B).

    25 Canary 0.0.51.85: Issues (⌘3) did nothing in a project without GitHub; 0.0.53 hides it (githubnext/ace#591).

^659

Keyboard shortcuts

partial

Every shortcut the app or desktop defines.

  1. ^660

    Window shortcuts

    partial

    ⌘1–⌘4 views (^602), ⌘B navigation (^603), ⌘⇧B channels sidebar (^604), ⌘K palette (^646), ⌘, Settings, ⌘O Open Folder…, ⌘N new window and ⌘Q quit (desktop).

    26 The keys work, but nothing lists them: no shortcut page, ⌘/ does nothing, and only palette entries show keys.

  2. ^661

    Tab and pane keys

    visual

    ←/→/Home/End between tabs (^629), Backspace/Delete closes (^631), Esc cancels a drag or resize (^640, ^643).

    27 The 2026-10-22 study found no keys for new tab, close, split or pane focus (⌘T, ⌘W, ⌘\), and nothing lists the tab-list keys.

  3. ^662

    See all shortcuts in one place

    missing

    Expect a shortcut list or ? overlay.

    28 Shortcuts only show as hints in the rail tooltips and the palette; nothing lists tab and pane keys.