[BUG]Claude Code hangs silently on startup — Jetson Orin AGX (JetPack R36.4.7, linux-arm64)
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?
Environment
| Field | Value |
|---|---|
| Claude Code version | 2.1.140 |
| Install method | npm install -g @anthropic-ai/claude-code |
| Platform | linux-arm64 |
| Hardware | NVIDIA Jetson Orin AGX |
| OS | Ubuntu (L4T) — JetPack R36, REVISION 4.7 |
| Kernel variant | oot (out-of-tree) |
| Node.js | v22.21.0 |
| npm | 10.9.4 |
---
claude hangs indefinitely on startup with no output and no error message. The process must be killed with Ctrl+C.
Key observations:
claude --versionreturns immediately and correctly (2.1.140 (Claude Code))claude --print "hello"exits silently with code 0, no outputCLAUDE_LOG_LEVEL=debug claudeproduces no output before hangingclaude config listhangsclaude auth logincompletes successfully; credentials are saved and valid- OAuth token works — direct curl calls to
api.anthropic.com/v1/modelsreturn a valid response - Multiple simultaneous curl connections to
api.anthropic.comall succeed - The hang occurs on both native installer and npm install paths
- Reinstalling from scratch (rm -rf ~/.claude + fresh npm install) does not fix it
---
Diagnostics
strace — threads deadlocked in futex
timeout 10 strace -f claude --print "hello" 2>&1 | tail -20
All threads exit via futex wait timeout — the process deadlocks during startup and is killed by timeout with exit code 0.
Network connections (strace -e trace=network)
Claude Code opens 3 simultaneous connections to api.anthropic.com (160.79.104.10:443), all stuck in EINPROGRESS:
[pid N] connect(16, {AF_INET, 160.79.104.10, port 443}) = -1 EINPROGRESS
[pid N] connect(17, {AF_INET, 160.79.104.10, port 443}) = -1 EINPROGRESS
[pid N] connect(19, {AF_INET, 160.79.104.10, port 443}) = -1 EINPROGRESS
Only api.anthropic.com is contacted — no other domains. DNS resolves correctly.
statsig / sentry
statsig.anthropic.com and sentry.io do not respond (curl hangs). Blocking both via /etc/hosts did not resolve the startup hang.
Confirmed working
curl -s https://api.anthropic.com— returns immediately ✅- 3 parallel curl connections to
api.anthropic.com— all succeed ✅ - OAuth token authenticated and valid ✅
claude --version— returns immediately ✅
---
Root cause hypothesis
The hang appears to be in the Bun runtime's event loop / TLS connection handling on the Jetson Orin's out-of-tree kernel. This is consistent with issue #35454 (gVisor ARM64 epoll_pwait hang) — the Jetson OOT kernel may have similar issues with how Bun's io_uring/epoll event loop initializes concurrent TLS connections on non-standard arm64 kernels.
Unlike a standard arm64 Linux system, the Jetson runs L4T with an out-of-tree kernel variant which may not support all the io_uring or epoll features Bun relies on.
---
What Should Happen?
Claude Code should launch the interactive TUI and respond to prompts normally, as it does on standard arm64 Linux.
Error Messages/Logs
Steps to Reproduce
- Set up a Jetson Orin AGX with JetPack R36.4.7 (L4T, kernel variant: oot)
- Install Node.js v22, npm 10
npm install -g @anthropic-ai/claude-codeclaude auth login(complete OAuth flow)claude— hangs indefinitelyclaude --print "hello"— exits silently, no output, exit code 0
Claude Model
None
Is this a regression?
Yes, this worked in a previous version
Last Working Version
_No response_
Claude Code Version
2.1.140
Platform
Anthropic API
Operating System
Ubuntu/Debian Linux
Terminal/Shell
Terminal.app (macOS)
Additional Information
This platform (Jetson Orin AGX) is widely used for edge AI development and is a natural fit for Claude Code. The issue has persisted across multiple versions and reinstalls. A previous version worked once after a clean reinstall but the fix was not reproducible.
Related issues: #35454 (gVisor ARM64 epoll), #29652 (startup hang after update)
This issue has 2 comments on GitHub. Read the full discussion on GitHub ↗