Skip to content

Shell (!) mode: Tab should trigger normal terminal completion, not switch to Issues #4387

Description

@holtsoftware

Describe the feature or problem you'd like to solve

When executing a shell command directly by prefixing it with  ! , pressing Tab does not behave like a normal terminal's tab-completion (completing file/directory paths, commands, or flags). Instead, it switches focus/navigation to the Issues view within the CLI. This breaks the expected muscle-memory of a shell prompt and makes it harder to quickly complete paths or commands while working in  !  shell mode.

Proposed solution

When a command is prefixed with  !  (direct shell execution), pressing Tab currently gets intercepted by Copilot CLI's own UI (switching focus/view to Issues) instead of being passed through to the underlying shell for standard completion (file paths, commands, flags — like a normal terminal). Since  !  is meant to give a raw shell pass-through experience, Tab keystrokes while in that mode should be forwarded to the shell's native completion instead of being captured by the CLI's own keybindings.

Example prompts or workflows

  1. In the Copilot CLI, type  !cd ../../projects/my-  and press Tab — expected: shell completes the path to the matching directory, same as typing it directly in a terminal.
  2. Type  !git chec  and press Tab — expected: shell completes to  git checkout  (or cycles matches), not a switch to the Issues panel.
  3. Type  !ls src/  and press Tab to cycle through files/folders in  src/  — expected: standard filename completion, same as bash/zsh/PowerShell.

Additional context

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    area:input-keyboardKeyboard shortcuts, keybindings, copy/paste, clipboard, mouse, and text input

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions