Description
Copilot CLI crashes frequently on WSL2 (Ubuntu 24.04, aarch64) with setRawMode EIO errors. The process loses its stdin connection mid-session and shuts down. This is happening multiple times per day — 21 crashes in the past 8 days, with 13 on a single day.
This is distinct from #2088 (React hooks rendering error). The crash signature here is a terminal stdin disconnection, not a rendering bug.
Environment
- OS: Ubuntu 24.04.4 LTS on WSL2
- Kernel: 6.6.87.2-microsoft-standard-WSL2
- Architecture: aarch64 (ARM64)
- Terminal: VS Code Insiders integrated terminal (github.copilot-chat v0.42.2026032703)
- Node.js: v18.19.1
- Copilot CLI: 1.0.13-1 (installed via
npm install -g @github/copilot)
- Shell: bash
Crash Signature
From the process logs (~/.copilot/logs/process-*.log):
2026-03-28T18:20:57.662Z [DEBUG] [shutdown] Starting dispose: InkInstance.rerender
2026-03-28T18:20:57.679Z [DEBUG] Ignoring transient stdin error: setRawMode EIO
2026-03-28T18:20:57.679Z [INFO] Unregistering foreground session: fd8423ed-...
The pattern is consistent across all 21 crashes:
- Session is running normally (often during background agent work or tool calls)
setRawMode EIO — stdin connection to the terminal is severed
- Session shuts down, losing all in-progress work
Frequency
| Date |
Crashes |
| 2026-03-21 |
1 |
| 2026-03-23 |
2 |
| 2026-03-25 |
1 |
| 2026-03-26 |
1 |
| 2026-03-27 |
2 |
| 2026-03-28 |
13 |
| 2026-03-29 |
1 |
The acceleration on Mar 28 correlates with heavier usage (multi-agent workflows with --agent flag), but crashes also occur during simple single-agent sessions.
Reproduction
Not reliably reproducible on demand, but happens consistently during extended sessions (10-60 minutes). More frequent when:
- Using
copilot --agent squad (custom agent with sub-agent spawning)
- Multiple background tool calls running in parallel
- Sessions lasting >15 minutes
What I've Tried
- Version pinning: Does not work. All npm versions (
@github/copilot@1.0.5 through @latest) and all GitHub Release tags (v1.0.5 through v1.0.12) deliver the identical 1.0.13-1 binary. Old binaries are not preserved in the registry.
- Clean reinstall:
npm cache clean --force + sudo npm install -g @github/copilot@latest — crashes persist
- Removing duplicate installs: Had both curl (
~/.local/bin/copilot) and npm (/usr/local/bin/copilot) — removed curl install, no improvement
--no-auto-update: Using this flag to prevent mid-session updates
Expected Behavior
Sessions should survive stdin interruptions gracefully (reconnect or buffer) rather than terminating. At minimum, the CLI should save session state before shutting down so --resume can recover.
Additional Context
Description
Copilot CLI crashes frequently on WSL2 (Ubuntu 24.04, aarch64) with
setRawMode EIOerrors. The process loses its stdin connection mid-session and shuts down. This is happening multiple times per day — 21 crashes in the past 8 days, with 13 on a single day.This is distinct from #2088 (React hooks rendering error). The crash signature here is a terminal stdin disconnection, not a rendering bug.
Environment
npm install -g @github/copilot)Crash Signature
From the process logs (
~/.copilot/logs/process-*.log):The pattern is consistent across all 21 crashes:
setRawMode EIO— stdin connection to the terminal is severedFrequency
The acceleration on Mar 28 correlates with heavier usage (multi-agent workflows with
--agentflag), but crashes also occur during simple single-agent sessions.Reproduction
Not reliably reproducible on demand, but happens consistently during extended sessions (10-60 minutes). More frequent when:
copilot --agent squad(custom agent with sub-agent spawning)What I've Tried
@github/copilot@1.0.5through@latest) and all GitHub Release tags (v1.0.5throughv1.0.12) deliver the identical 1.0.13-1 binary. Old binaries are not preserved in the registry.npm cache clean --force+sudo npm install -g @github/copilot@latest— crashes persist~/.local/bin/copilot) and npm (/usr/local/bin/copilot) — removed curl install, no improvement--no-auto-update: Using this flag to prevent mid-session updatesExpected Behavior
Sessions should survive stdin interruptions gracefully (reconnect or buffer) rather than terminating. At minimum, the CLI should save session state before shutting down so
--resumecan recover.Additional Context