[FEATURE] Desktop app: keyboard shortcut to toggle the Background tasks panel

Status Open
Reported on v2.1.229
Maintainer reply None cached
Activity 0 comments · opened Aug 14, 2026

Summary

The desktop Code tab has no keyboard shortcut that opens or closes the Background tasks panel. Every other pane in the same overflow menu has one. Please add a toggleTasks command bound to cmd+shift+j.

Current behavior

To reach the panel, I must use the mouse:

  1. Click the overflow button in the top right of the Code tab.
  2. Click Background tasks.

cmd+\ (closePane) closes the panel once it is open. No key opens it.

The overflow menu shows access letters for Rename, Fork, Archive, and Delete. The Background tasks row shows none.

Evidence

One helper builds the menu rows. The Files row passes a shortcut property. The Background tasks row does not:

// Files
{ icon: G3.browser, label: "Files", checked: o.has("browser"),
  shortcut: bc("toggleBrowser", x), onSelect: () => d("browser") }

// Background tasks
{ icon: G3.tasks, label: "Background tasks", checked: o.has("tasks"),
  status: w, onSelect: () => d("tasks") }        // no shortcut property

The pane shortcut table has no row for the tasks pane. These are all 18 rows:

{command:"togglePreview",       key:"cmd+shift+b", when:"isClaudeApp", gate:"externalPreviewAvailable"}
{command:"togglePreview",       key:"cmd+shift+p", when:"isClaudeApp"}
{command:"togglePreview",       key:"cmd+alt+p",   when:"!isClaudeApp"}
{command:"toggleDiff",          key:"cmd+shift+d", when:"isClaudeApp"}
{command:"toggleDiff",          key:"ctrl+shift+d", when:"!isClaudeApp"}
{command:"toggleTerminal",      key:"ctrl+`"}
{command:"toggleTerminal",      key:"cmd+j",       when:"isClaudeApp", mac:true}
{command:"toggleBrowser",       key:"cmd+shift+f"}
{command:"closePane",           key:"cmd+\\"}
{command:"toggleSideChat",      key:"cmd+;"}
{command:"cycleTranscriptMode", key:"ctrl+o"}
{command:"openModeMenu",        key:"cmd+shift+m", when:"isClaudeApp"}
{command:"openModeMenu",        key:"cmd+alt+m"}
{command:"openModelMenu",       key:"cmd+shift+i"}
{command:"openEffortMenu",      key:"cmd+shift+e"}
{command:"toggleFastMode",      key:"cmd+alt+f"}
{command:"toggleSelectionMode", key:"cmd+shift+s"}
{command:"newPreviewTab",       key:"cmd+t",       when:"isClaudeApp"}

I found both fragments under Contents/Resources/ion-dist/assets/v1/ inside Claude.app. The asset file names are content hashed, so they change per release.

Proposed change

  1. Add a row to the pane shortcut table:

``js
{command:"toggleTasks", key:"cmd+shift+j", code:"KeyJ", when:"isClaudeApp"}
``

  1. Pass shortcut: bc("toggleTasks", x) on the Background tasks menu row.
  2. Add the command to the palette registry, so it is findable through cmd+K and listed in the shortcuts modal at cmd+/.

Please set both key and code. The matcher prefers code, which binds a physical key position. Issue [#78002][issue_78002] reports that this breaks the zoom shortcuts on a Norwegian layout.

For Windows and Linux, ctrl+shift+j mirrors it. Note that Chromium uses that combination for the devtools console, so a different non-mac key can be better.

Why cmd+shift+j

cmd+j already toggles the Terminal. Terminal and Background tasks are the two panes that show work in flight, so adjacent keys help.

I checked all four layers that bind keys on macOS. cmd+shift+j is free in each one.

| Layer | Occupies cmd+shift+ |
| --- | --- |
| Pane shortcut table | B, D, E, F, I, M, P, S |
| Command palette registry | A, E, I, K, O, comma, period |
| Native menu bar | G, V, Z |
| Composer rich-text keymap | B, K, L, M, S, U, Z, 7, 8, 9 |

Two results are worth recording:

  • cmd+shift+a is not available. A hidden internal ant_tools command holds it.
  • Plain cmd+<letter> is a poor choice. The composer keymap claims Mod-a/b/d/e/f/g/i/s/u/y for text formatting.

Why the existing config cannot do this

~/.claude/keybindings.json covers the TUI action registry. That registry has no action for a desktop pane. The nearest actions do something else:

  • task:background sends a running foreground task to the background.
  • app:toggleTodos, app:toggleTranscript, and app:toggleBrief toggle other views.

So the desktop table is the only place where this can live today.

Alternatives I ruled out

macOS System Settings has Keyboard Shortcuts, then App Shortcuts. That binds keys to native menu bar items only, matched by exact title. The menu is HTML content inside the window, so macOS cannot see the row. The native View menu holds only reload, navigation, tab switching, zoom, Copy URL, and full screen.

A hotkey tool such as Hammerspoon can click the button and the row. The button carries no stable accessibility identifier, so the script must target it by position or by visible text. Any layout change breaks it.

Related issues

  • [#86449][issue_86449] and [#80682][issue_80682] request a shortcut for Archive, in the same overflow menu.
  • [#83883][issue_83883] reports the same gap for the FleetView pin-to-top action.
  • [#9177][issue_9177] requests user-configurable shortcut actions in general.
  • [#72426][issue_72426] requests a shortcut that opens the thread context menu in the left panel.

Environment

  • Platform: macOS, Darwin 25.5.0, Apple silicon
  • Claude desktop app: 1.30096.1
  • Bundled Claude Code: 2.1.229

[issue_72426]: https://github.com/anthropics/claude-code/issues/72426
[issue_78002]: https://github.com/anthropics/claude-code/issues/78002
[issue_80682]: https://github.com/anthropics/claude-code/issues/80682
[issue_83883]: https://github.com/anthropics/claude-code/issues/83883
[issue_86449]: https://github.com/anthropics/claude-code/issues/86449
[issue_9177]: https://github.com/anthropics/claude-code/issues/9177

View original on GitHub ↗