This issue report describes two major UX problems on Android/Termux.
-
Relauncher Loop (Duplicate Logos and Auth prompts):
When Termux is moved to the background, Android often kills the high-resource child process. The parent monitoring process then restarts a new child, leading to duplicate ASCII logos and repeated OAuth login prompts.
-
UI Remounting on Resize:
Virtual keyboard toggles trigger terminal resizes. The current React key mapping forces a full remount, which clutters terminal history with new Headers.
Proposed Fixes (Tested):
- In packages/cli/src/utils/relaunch.ts: Disable relauncher if os.platform() is 'android'.
- In packages/cli/src/gemini.tsx: Use a stable key for AppContainer on 'android' to prevent full remounts.
Full technical details and patch were verified in a local Termux environment. Improving stability for mobile CLI users would be a great addition to Gemini CLI.
This issue report describes two major UX problems on Android/Termux.
Relauncher Loop (Duplicate Logos and Auth prompts):
When Termux is moved to the background, Android often kills the high-resource child process. The parent monitoring process then restarts a new child, leading to duplicate ASCII logos and repeated OAuth login prompts.
UI Remounting on Resize:
Virtual keyboard toggles trigger terminal resizes. The current React key mapping forces a full remount, which clutters terminal history with new Headers.
Proposed Fixes (Tested):
Full technical details and patch were verified in a local Termux environment. Improving stability for mobile CLI users would be a great addition to Gemini CLI.