Skip to content

[FEATURE]: Allow rebinding the subagent active/inactive toggle #56002

Open

Description

@DachiChang

Feature hasn't been suggested before.

  • I have verified this feature I'm about to request hasn't been suggested before.

Describe the enhancement you want to request

In OpenCode V2's TUI, I'd like to customize the shortcut for “show active / show inactive” in the Subagents picker—for example, use Tab instead of Ctrl+A.

In v2.0.30, composer.subagent.toggle-activity has an inline bind: "ctrl+a", but is missing from the configurable keybind definitions, so it cannot be overridden through cli.json.

Could this action be exposed as a configurable keybind, keeping Ctrl+A as the default? The footer should reflect the configured shortcut, and using Tab should not affect autocomplete outside the picker.

Related: #51903 concerns mouse interaction with the same footer, rather than rebinding.

Activity

  1. opencode-agent commented on Oct 16, 2026

    @opencode-agent
    Contributor

    Thanks for the request, and for linking the exact code! You'd like the Subagents picker's show active / show inactive toggle (composer.subagent.toggle-activity, currently hardcoded to ctrl+a) to be a configurable keybind in cli.json. Ctrl+A would stay the default, the footer would show the configured key, and binding it to Tab wouldn't affect autocomplete outside the picker.

    I checked the current code: the action still has an inline bind and isn't in the keybind definitions, while the other composer.subagent.* actions are. A plugin can't work around this, because the bind is hardcoded in the TUI. Maintainers will consider it.

    Related issues:

  2. DachiChang commented on Oct 17, 2026

    @DachiChang
    Author

    Adding some context on why this matters: I run OpenCode inside tmux/screen, where the default prefix is ctrl+a (or ctrl+b). The multiplexer intercepts the key before it reaches the TUI, so the hardcoded composer.subagent.toggle-activity bind is effectively unreachable unless I use the send-prefix workaround (ctrl+a ctrl+a in tmux, ctrl+a a in screen).

    Being able to remap this through cli.json would solve it without changing the default.

    Since the footer already reads shortcuts.get("composer.subagent.toggle-activity"), it looks like registering this id in config/keybind.ts (default ctrl+a) and using the resolved binding in subagents-tab.tsx instead of the inline bind: "ctrl+a" would be enough, with the footer hint following the configured key automatically.

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