feat: add brokerless GitHub device authentication - #371
Open
dhruvbhavsar0612 wants to merge 10 commits into
Open
feat: add brokerless GitHub device authentication#371dhruvbhavsar0612 wants to merge 10 commits into
dhruvbhavsar0612 wants to merge 10 commits into
Conversation
Mount a single SearchModal at the app level and portal it to document.body so position:fixed stays viewport-centered. The collapsed sidebar's CSS transform was becoming the containing block when Search opened from a peeked/sidebar mount, shifting the palette off-center. Co-authored-by: Bhavsar Dhruv Ajit <dbhavsar9898@gmail.com>
Avoid Meta+b races during boot-splash by waiting for the app shell and collapsing via the sidebar button before asserting palette centering. Co-authored-by: Bhavsar Dhruv Ajit <dbhavsar9898@gmail.com>
…lignment-1f7e Fix search modal misalignment when opened from collapsed sidebar (andrewyng#282)
Co-authored-by: Bhavsar Dhruv Ajit <dbhavsar9898@gmail.com>
Co-authored-by: Bhavsar Dhruv Ajit <dbhavsar9898@gmail.com>
Co-authored-by: Bhavsar Dhruv Ajit <dbhavsar9898@gmail.com>
Co-authored-by: Bhavsar Dhruv Ajit <dbhavsar9898@gmail.com>
Co-authored-by: Bhavsar Dhruv Ajit <dbhavsar9898@gmail.com>
Co-authored-by: Bhavsar Dhruv Ajit <dbhavsar9898@gmail.com>
dhruvbhavsar0612
marked this pull request as ready for review
July 31, 2026 09:46
4 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Implements upstream issue #340: GitHub OAuth Device Authorization Flow as a local, brokerless alternative to manually creating a PAT.
slow_down, denial and expiry handling, identity validation, cancellation, and race-safe persistence.device_codeand access tokens out of API responses.SecretStorewhile preserving GitHub App relay state.<2; MCP 2.0 renamed an API imported by the existing server and otherwise breaks fresh CI collection.Maintainer setup required
Before enabling this in a production release:
github_oauth_client_iddefault. The client ID may be committed; do not add a client secret.repo; add no broader scopes unless a concrete tool requires them.Forks can set
github_oauth_client_idandgithub_oauth_scopesinconfig.toml. With no client ID, the UI returns an actionable configuration error and makes no GitHub request.Security and architecture
mode: relay, creategithub:install:*records, or replace the GitHub App installation path used for inbound mentions.SecretStoreis a user-restricted local file (0600/Windows ACL), not an OS keyring. A keychain backend remains separate infrastructure work.Validation
github_device_auth_local_flow.mp4