Problem
The ttyd web terminal (both standalone at clide's port and embedded in clem's Terminal tab) enters an infinite reconnect loop on mobile browsers. The terminal never renders — just keeps trying to connect.
Affects:
- Direct access to clide ttyd (e.g.
http://forge-edge:7681)
- Clide embedded in clem's Terminal section via iframe
- clidestable stall terminals (ttyd iframes)
Likely causes
- WebSocket connection dropped by mobile browser — mobile browsers aggressively kill background WebSocket connections, and ttyd's xterm.js reconnect logic enters a tight loop
- Viewport/resize issues — xterm.js may fail to initialize when the terminal viewport is too small or when the iframe hasn't fully rendered
- ttyd
--reconnect setting — currently set to reconnect=3 (3 second retry), which on mobile creates a visible loop
Investigation needed
Workaround
Use the log viewer / activity log approach instead of ttyd on mobile. clidestable's /log/<name> page works on mobile since it's plain HTTP polling.
Related
Problem
The ttyd web terminal (both standalone at clide's port and embedded in clem's Terminal tab) enters an infinite reconnect loop on mobile browsers. The terminal never renders — just keeps trying to connect.
Affects:
http://forge-edge:7681)Likely causes
--reconnectsetting — currently set toreconnect=3(3 second retry), which on mobile creates a visible loopInvestigation needed
--reconnect=0(disable auto-reconnect)--client-optionfor mobile-specific settingsWorkaround
Use the log viewer / activity log approach instead of ttyd on mobile. clidestable's
/log/<name>page works on mobile since it's plain HTTP polling.Related
fix/mobile-split-viewbranch — defaults split view to log tab instead of ttyd