Shell command completion never detected when running inside tmux (output appears, but command reported "still running" forever)
- Lingua principale
- Shell
- Stelle
- 11.2k
- Fork
- 1.9k
- Merge medio
- 14h 16m
- PR unite (30g)
- 6
Descrizione
### Describe the bug
When Copilot CLI runs **inside a tmux session**, shell tool commands execute and their **output appears correctly**, but the CLI **never detects command completion**. Even a trivial `echo hello` prints `hello` and then hangs indefinitely as "still running"; it must be manually stopped. Running the CLI **outside tmux**, the identical command completes immediately (`exit code 0`).
This is independent of tmux version and config. See matrix below.
### What this is NOT
Not the unfocused-pane keystroke bug (#4213): output is delivered fine and this is not about input/enter. This is specifically **completion/exit detection** of shell tool commands.
### Reproduction matrix
| Condition | Result |
|---|---|
| Inside tmux 2.7 | hangs -> "still running" forever |
| Inside tmux 3.3a (`escape-time 0`, `allow-passthrough on`) | hangs |
| Outside tmux | `echo hello` -> completes, exit 0 |
### Affected version
1.0.74-1 (also seen on prior versions starting from 1.0.70). Version 1.0.69 is unaffected
### Steps to reproduce the behavior
1. Start Copilot CLI **inside a tmux pane**.
2. Have the agent run a shell command, e.g. `echo hello`.
3. Output `hello` appears, but the command is reported "still running" indefinitely; only `stop` clears it.
4. Exit tmux, repeat the same command. It completes normally with exit code 0.
### Expected behavior
Shell command completion/exit should be detected the same inside and outside tmux.
### Additional context
### Environment
- Copilot CLI: **1.0.74-1** (also seen on prior version)
- OS: Linux
- Shell: /bin/bash, `TERM=xterm-256color`
- tmux: reproduced on **2.7** and **3.3a**
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Inizia riproducendo il problema dentro e fuori da tmux con `echo hello`, confrontando il completamento del comando shell e lo stato di uscita. Segui il rilevamento del completamento dei comandi shell da parte della CLI e identifica perché tmux si comporta diversamente; il lavoro è completato quando il comando segnala il completamento e il codice di uscita 0 in entrambi gli ambienti.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- bash, shell
- Ambito
- cli, operating-systems
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Tranquilla
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 52/100