GH FastPass

Automatically dismiss GitHub Mobile's 2FA verification dialog after approval.

Android 10+ LSPosed API 101 Kotlin Gradle

Overview

Every time you approve a 2FA push notification in the GitHub app, a "Verification request approved" dialog blocks the screen until you tap CLOSE. This module removes that friction by hooking the dialog's Compose state machine and finishing the activity as soon as the approval completes.

StockPatched
Stock GitHub 2FA dialog Patched auto-dismiss

Requirements

  • Android 10 (API 29) or higher
  • An LSPosed Manager version with API 101 support (required for now)
  • GitHub mobile app (com.github.android)

Note

Tested with GitHub Mobile v1.249.1. Other versions should work as long as GitHub doesn't restructure the 2FA dialog internals.

Install

  1. Download the APK:

    Get it on GitHub Get it on Obtainium

  2. Enable the module in LSPosed and scope it to com.github.android

  3. Force-stop the GitHub app and relaunch

Build

git clone --recurse-submodules https://github.com/hxreborn/gh-fast-pass.git
cd gh-fast-pass
./gradlew buildLibxposed
./gradlew assembleRelease

Requires JDK 21 and Android SDK. Configure local.properties:

sdk.dir=/path/to/android/sdk

# Optional signing
RELEASE_STORE_FILE=<path/to/keystore.jks>
RELEASE_STORE_PASSWORD=<store_password>
RELEASE_KEY_ALIAS=<key_alias>
RELEASE_KEY_PASSWORD=<key_password>

License

GPLv3

This project is licensed under the GNU General Public License v3.0. See the LICENSE file for details.

Releases

10/19/2026, 2:30:59 PM

What's Changed

Bug Fixes

Refactor

Reverts

Documentation

Styling

Build

CI

  • 7861023 (deps) Bump gradle-wrapper from 9.7.1 to 9.8.0 by @dependabot[bot]

    Bumps gradle-wrapper from 9.7.1 to 9.8.0.


    updated-dependencies:

    • dependency-name: gradle-wrapper
      dependency-version: 9.8.0
      dependency-type: direct:production
      update-type: version-update:semver-minor
      ...
  • 2475852 (deps) Bump com.android.application from 9.4.0 to 9.4.1 by @dependabot[bot]

    Bumps com.android.application from 9.4.0 to 9.4.1.


    updated-dependencies:

    • dependency-name: com.android.application
      dependency-version: 9.4.1
      dependency-type: direct:production
      update-type: version-update:semver-patch
      ...
  • ad8d41e (deps) Bump com.android.application from 9.1.0 to 9.4.0 by @dependabot[bot] in #12

  • fe60bdb (deps) Bump gradle-wrapper from 9.5.1 to 9.7.1 by @dependabot[bot] in #11

  • 6cf5eff (deps) Hold io.github.libxposed on the 101 line by @hxreborn

  • c02bce9 (deps) Hold io.github.libxposed on the 101 line by @hxreborn

  • 21193cf (deps) Bump io.github.libxposed:api from 101.0.1 to 102.0.0 by @dependabot[bot] in #10

  • b4b06ec (deps) Bump gradle-wrapper from 9.4.0 to 9.5.1 by @dependabot[bot] in #9

  • 597a075 (deps) Bump io.github.libxposed:api from 101.0.0 to 101.0.1 by @dependabot[bot] in #5

  • d66c1ed (deps) Bump org.jlleitschuh.gradle.ktlint from 14.0.1 to 14.2.0 by @dependabot[bot] in #1

  • 19d4171 Tag the mirror head before creating the mirror release by @hxreborn

  • 4d14896 Use ci(deps) prefix for dependabot commit messages by @hxreborn

  • 5ccd4b4 Derive mirror tag from version properties by @hxreborn

Miscellaneous

Assets

1