docs(blog): The OAuth That Runs in the Sidecar — subscription connect in gptme - #137
Conversation
🤖 AI code reviewAdds a blog post, _posts/2026-09-23-subscription-oauth-gptme.md, describing gptme's new subscription OAuth PKCE flow that runs in the Python sidecar, plus a binary OG image asset. The post explains the Tauri constraint, the headless-server fallback with a clickable oauth_url, the setup-wizard gate (canManageApiKeyInApp || isLocalServer), and the three supported providers. Safe to merge — no P0/P1 findingsConfidence 5/5 ✅ No thread-worthy findings. Advisory notes follow; they are retained without opening review threads. 1 advisory finding (summary-only, not scored)These P2 guard, heuristic, trade-off, or documentation claims are retained for judgment without opening review threads.
The post describes two mutually exclusive behaviors for remote/headless installs. Line 59 states that on headless servers — explicitly naming 'SSH sessions, remote instances' — the flow keeps the PKCE callback alive and surfaces the oauth_url as a clickable link for the user to paste into a local browser. Lines 63-65 then say the subscription connect section is gated on How this was verified: Compared line 59 against lines 63-65 of the same file; the gate expression Consensus: 3/3 passes agreed Files changed (1) — the diff as I read it
Previous review passes
Reviewed Maintainer commands
|
|
Git-Session-Id: e7da
82e318f to
7948968
Compare
|
Rebased onto Why it conflicted: the branch carried two commits — Resolution: replayed only the OAuth commit onto master and dropped the superseded draft. The branch now changes exactly two files:
That also resolves the |
Publishes a blog post about gptme's new subscription OAuth PKCE flow (merged in gptme#3912 today).
Post: The OAuth That Runs in the Sidecar
The post explains why the entire OAuth flow lives in the Python sidecar instead of TypeScript, how the Tauri desktop constraint shaped the architecture, and what the "no API key needed" UX looks like under the hood.
Includes OG image.