github / github/copilot-cli

CLI can get stuck on 'Cancelling' and stop accepting Enter (slash commands become unusable)

Aberta
#2,770 1 comentário 9 reações 0 responsáveis Ver no GitHub
area:input-keyboard area:models
Linguagem predominante
Shell
Estrelas
11.2k
Forks
1.9k
Merge médio
14h 16min
PRs com merge (30d)
6

Descrição

### Describe the bug

In some failure cases (seems to correlate with server-side rate limiting / request hang), Copilot CLI becomes unusable after attempting to cancel. The UI input remains responsive (you can type and see autocomplete), but pressing **Enter** stops doing anything — commands like `/restart` and `/session info` cannot be executed.

After pressing **Esc**, the UI shows **"Cancelling"** indefinitely. Esc no longer interrupts, and Enter will not submit commands.

### Steps to reproduce (approx)

1. Submit a prompt that triggers a backend request.
2. Backend appears rate limited / hung; CLI shows no useful feedback for 5+ minutes.
3. Press **Esc** to cancel.
4. Observe: status shows **"Cancelling"** and never completes for a long time.
5. Try `/restart` + Enter or `/session info` + Enter.
6. Observe: the text remains in the input line but **Enter does not execute**.

Eventually (8–10+ minutes later) it “releases” and starts working again, but until then there’s no way to recover.

### Expected behavior

- Cancellation should complete quickly (or time out with a clear failure state).
- Even while a request is cancelling/hung, **Enter should still work** for local slash commands like `/restart`, `/session info`, and ideally a “force cancel” action.
- If the CLI is rate-limited, show actionable feedback (retry-after / backoff) rather than appearing frozen.

### Actual behavior

- Stuck in **"Cancelling"**.
- **Esc** no longer works.
- Input is responsive for typing/autocomplete, but **Enter does not execute** `/restart` or `/session info`.
- Cannot retrieve session info to safely force-quit and resume.

### Environment

- OS: Windows
- Trigger: appears during/after suspected rate limit or hung server connection

### Additional context / suggestions

This feels like an input state machine deadlock where cancellation disables submit/Enter processing globally. Local commands should remain functional regardless of backend request state.

Guia de contribuição

Abrir o guia de contribuição

Direção de pesquisa

No files, tests, or entry points are identified in the issue. Reproduce the Windows cancellation flow, then trace how the CLI handles cancellation, Enter submission, and local slash commands. Done means cancellation cannot leave the CLI stuck indefinitely and commands such as /restart and /session info remain usable or receive a clear timeout state.

Escrita pelo modelo de indexação a partir do texto da issue.

Avaliação

Stack de tecnologia
shell
Domínio
cli
Tipo de issue
Bug
Dificuldade
4/5
Tempo estimado
3-5 dias
Status de atividade
Pouca atividade
Clareza
Razoavelmente clara
Facilidade para iniciantes
45/100

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.