[BUG] v2.1.19 native installer randomly aborts on SSH/remote terminal sessions
Preflight Checklist
- [x] I have searched existing issues and this hasn't been reported yet
- [x] This is a single bug report (please file separate reports for different bugs)
- [x] I am using the latest version of Claude Code
What's Wrong?
After migrating from npm to native installer, Claude Code randomly exits with "Aborted" message. This happens:
- While idle at the input prompt (after a few seconds)
- When autocomplete dropdown appears (typing partial commands like
/doc) - After receiving a response and waiting for next input
The CLI works for a single interaction but aborts before the next input can be entered. Issue occurs on SSH/remote terminal sessions.
What Should Happen?
Claude Code should remain at the input prompt waiting for user input without aborting.
Error Messages/Logs
2026-01-24T10:17:02.868Z [ERROR] Error: Error: ENOENT: no such file or directory, scandir '/etc/claude-code/.claude/skills'
2026-01-24T10:17:02.868Z [ERROR] Error: Error: ENOENT: no such file or directory, scandir '/home/jaco/.claude/skills'
2026-01-24T10:17:02.887Z [ERROR] Error: Error: NON-FATAL: Lock acquisition failed (expected in multi-process scenarios)
Steps to Reproduce
- SSH into a remote Linux server (Ubuntu 24)
- Install Claude Code native installer v2.1.19
- Run
claude - Type a message (e.g., "hello") and press Enter - this works
- Wait at the prompt for next input - aborts after a few seconds
- Alternative: type
/docto trigger autocomplete dropdown - aborts immediately
Claude Model
Opus
Is this a regression?
Yes, this worked in a previous version
Last Working Version
npm-installed version (before migration to native installer)
Claude Code Version
2.1.19 (Claude Code)
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
Other
Additional Information
Tested in:
- VS Code integrated terminal (xterm-256color)
- gnome-terminal over SSH
- tmux session
All exhibit the same issue.
Troubleshooting performed:
| Action | Result |
|--------|--------|
| Fresh install after removing npm version | Still aborts |
| Removed stale plugin references | Still aborts |
| Removed hooks referencing non-existent scripts | Still aborts |
| Killed stale claude process holding version lock | Still aborts |
| Clean ~/.claude/ directory (fresh start) | Still aborts |
| env -i HOME=$HOME PATH=$PATH TERM=xterm claude | Still aborts |
| Tested inside tmux session | Still aborts |
| Checked strace for signals | No abnormal signals detected |
Key finding: The abort triggers when the autocomplete dropdown renders OR when the prompt is idle. This occurs regardless of terminal type, suggesting a bug in the native installer's input polling/event loop.
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗