github / github/copilot-cli

Interruptible Reasoning via Mode‑Switching Architecture

Abierto
#1,028 1 comentario 0 reacciones 0 asignados Ver en GitHub
area:input-keyboard
Lenguaje dominante
Shell
Estrellas
11.2k
Forks
1.9k
Merge medio
14 h 16 min
PR fusionados (30 d)
6

Descripción

### Describe the feature or problem you'd like to solve

Copilot’s current generation pipeline is non-interruptible. Once a request begins, the model cannot be paused or corrected mid-stream. The Stop button sends a soft cancel that does not reliably terminate hung requests, and canceling discards partial output. This prevents users from steering long-running reasoning tasks or injecting authoritative corrections when Copilot selects an incorrect branch: Feature Parody with WindSurf

### Proposed solution

# Summary
Copilot in VS Code currently uses a single-shot generation pipeline: once a request begins, the model cannot be paused, corrected, or redirected. The Stop button issues only a soft cancel, and canceling discards partial output. This limits developer control and prevents mid-stream correction when Copilot chooses the wrong reasoning branch.

A mode-switching architecture would allow Copilot to pause generation, accept user-injected information, merge it with cached partial output, and resume reasoning from the corrected context.

---

# Goals
1. Enable mid-stream user intervention
2. Preserve partial output
3. Support context merging
4. Provide a reliable hard-kill path
5. Improve responsiveness and developer control

---

# Proposed Architecture

## 1. Pause Mode
When the user clicks Stop or begins typing during generation:
- Copilot immediately pauses
- Partial output is cached
- UI enters a receptive "awaiting input" state

## 2. Context Pooling
When the user provides additional information, Copilot merges:
- cached partial output
- user correction
- original prompt

## 3. Resume Mode
When the user clicks Continue:
- Copilot resumes reasoning using the merged context
- No need to restart the task
- No repeated wrong-branch reasoning

## 4. Hard-Kill Option
A separate button that gives a true cancellation path that immediately terminates the running request, independent of backend state. Even if that cancellation is not possible on the server: in which case, keep additional prompt submissions disabled

---

# Comparison Table
Capability | Current Copilot | With Mode-Switching Architecture
---------------------------------- | ------------------- | --------------------------------
Pause generation | No | Yes
Inject mid-stream corrections | No | Yes
Merge partial output + user input | No | Yes
Resume reasoning from merged state | No | Yes
Hard-kill stuck requests | Soft cancel only | Yes
---
# UX Mockup (Text Description)
- User hits Stop -> generation halts instantly -> panel shows "Paused — awaiting input."
- User pastes correction -> Copilot displays "Context updated."
- User hits Continue -> Copilot resumes reasoning from the merged context, not from scratch.
- Optional: typing during generation automatically triggers Pause Mode.

### Example prompts or workflows

# Expected Impact
- More interactive and corrective workflows
- Reduced frustration from stuck or incorrect generations
- Better alignment with developer expectations for iterative reasoning
- Improved parity with tools that already support this mode-switching architecture

### Additional context

# Closing Note
This request aims to bring Copilot closer to parity with tools that already support this style of mode-switching architecture, such as WindSurf, Devin, and Claude

This was formatted with https://copilot.microsoft.com/conversations/join/ZcC2kozFhmUWE8fG6jQBb

Guía de contribución

Abrir la guía de contribución

Evaluación

Este issue todavía no se ha evaluado.

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.