github / github/copilot-cli

Shell command completion never detected when running inside tmux (output appears, but command reported "still running" forever)

オープン
#4,223 コメント 0 件 リアクション 0 件 担当者 0 名 GitHub で見る
area:tools
主要言語
Shell
スター
11.2k
フォーク
1.9k
平均マージ
14時間 16分
マージ済み PR(30日)
6

説明

### 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**

コントリビューションガイド

コントリビューションガイドを開く

調査の方向性

まず、`echo hello` を使って tmux の内外で問題を再現し、シェルコマンドの完了検出と終了ステータスを比較します。CLI によるシェルコマンドの完了検出を追跡し、tmux で異なる結果になる理由を特定します。両方の環境でコマンドが完了と終了コード 0 を報告すれば完了です。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
bash, shell
領域
cli, operating-systems
issue の種類
バグ
難易度
4/5
見積もり時間
3〜5日
活発さ
静か
明瞭さ
おおむね明確
初心者へのやさしさ
52/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。