[BUG] Claude Code Android App — Cannot Create GitHub Session Branches (Read Works, Write Fails)
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?
Claude Code Android App — Cannot Create GitHub Session Branches (Read Works, Write Fails)
Bug Report: Claude Code Android App — Cannot Create Session Branches on GitHub
Date: May 13, 2026
Time: ~5:06–5:27 PM ET
Reporter: Arik Marks
Environment: Claude Android App (Claude Code feature)
---
Summary
The Claude Code feature in the Claude Android app fails to initialize cloud sessions when connected to a GitHub repository. The app can read repositories (they appear in the repo selector) but cannot push the session branch to GitHub, causing all sessions to fail with a branch-not-found error. The same workflow succeeds immediately in the browser at claude.ai/code.
---
Environment
- Device: Android smartphone
- App: Claude Android app (Claude Code feature)
- Cloud environment: Default Cloud Environment 2
- GitHub account: Bonjiovanni
- Repository: Bonjiovanni/arik-litigation
- Repo status: Private, active, ~10 folders and files including CLAUDE.md
---
Error Message
"The requested branch or commit was not found in the git_repository source. Check the spelling of the branch name, verify it exists on the remote, and ensure it hasn't been deleted or renamed."
---
Steps to Reproduce
- Open Claude Android app
- Navigate to Claude Code
- Create a new session (or open existing session) connected to
Bonjiovanni/arik-litigation - Select
mainas the target branch - Send any message to initialize the session
Result: Session fails immediately with the error above.
Expected: Session initializes, Claude Code creates a claude/session-name branch off main, and the session starts normally.
---
Session Branch Details
The Android app attempted to create the following branches but failed to push them to GitHub:
claude/general-session-IWlpL(first session attempt)claude/update-claude-md-MQYra(second session attempt)
Neither branch appeared in the GitHub repository's branch list after the failed attempts, confirming the app cannot write to GitHub despite having the correct permissions.
By contrast, the following claude/ branches exist in the same repo and were successfully created by the Windows desktop app during prior sessions last week:
claude/fervent-turing-886b9bclaude/recursing-thompson-eccc91claude/blissful-bardeen-3d6750claude/thirsty-yalow-448a44
---
Diagnostic Steps Completed (All Ruled Out)
| Check | Result |
|---|---|
| Repo name correct | ✅ Confirmed Bonjiovanni/arik-litigation exists |
| Repo not empty | ✅ Contains ~10 folders and files with active content |
| Default branch | ✅ main confirmed as default |
| GitHub App installed | ✅ Claude app installed under Installed GitHub Apps |
| GitHub App permissions | ✅ All repositories, Read + Write access to code, checks, PRs, workflows |
| Branch protection rules | ✅ None configured on repo |
| Permissions update | ✅ Authorized pending permissions update during session |
| New session after fix | ❌ Still failed — branch still not pushed |
---
Workaround
Opening claude.ai/code in the phone's browser (not the Android app) connects to the same repo and initializes sessions successfully. The browser-based Claude Code created a session, read aid4mail_pipeline_diagram.md, and responded correctly within the same session window.
---
Root Cause Assessment
The Android app appears to use a different GitHub OAuth token than:
- The GitHub App installation (checked at github.com/settings/installations)
- The browser-based claude.ai/code session
The Android app token has sufficient read access to enumerate repos in the session setup UI, but lacks write access (or has a stale/invalid token) and cannot push new claude/ branches to the remote. The app provides no in-app option to disconnect or refresh the GitHub connection, and the issue persists across multiple new session attempts.
---
Impact
Claude Code is fully non-functional in the Android app for GitHub-connected cloud sessions. The only workaround is to use the mobile browser, which is functional but suboptimal compared to the native app experience.
---
Suggested Fix
- Expose a "Disconnect GitHub / Reconnect" option in the Android app settings
- Validate write access (not just read) when the GitHub connection is established in the app
- Surface a clear auth error when branch push fails, rather than a generic "branch not found" message
What Should Happen?
The expected behavior section should say:
When a user creates a new Claude Code session in the Android app connected to a GitHub repository, the app should:
- Create a new
claude/session-namebranch off ofmainon the remote GitHub repository - Push that branch to GitHub successfully
- Initialize the cloud session against that branch
- Allow the user to interact with the codebase normally
This is exactly what happens when using the same account and same repository via claude.ai/code in a mobile browser — the Android app should behave identically.
Error Messages/Logs
The requested branch or commit was not found in the git_repository source. Check the spelling of the branch name, verify it exists on the remote, and ensure it hasn't been deleted or renamed.
Steps to Reproduce
- Open Claude Android app (v1.260507.10) on Pixel 7 / Android 16
- Navigate to Claude Code
- Tap new session
- Select a GitHub repository (tested with
Bonjiovanni/arik-litigation) - Default branch
mainis shown and selected - Type any message to initialize the session
- Session immediately fails with the error above
- Verify on GitHub that no new
claude/branch was created — confirming the app failed to push the session branch
Claude Model
Sonnet (default)
Is this a regression?
Yes, this worked in a previous version
Last Working Version
Unknown
Claude Code Version
Na android app
Platform
Other
Operating System
Other
Terminal/Shell
Other
Additional Information
Android native app
This issue has 3 comments on GitHub. Read the full discussion on GitHub ↗