Files
openswarm/backend/apps
ciregenzandClaude Opus 4.6 24ad784cd0 [eric] seamless subscription connect — no 9Router GUI needed
OAuth flow now stays entirely within OpenSwarm:
1. Click "Connect Claude" → Anthropic sign-in opens as popup
2. User signs in → 9Router's /callback catches redirect
3. postMessage sends code back to OpenSwarm window
4. OpenSwarm exchanges code via /subscriptions/exchange proxy
5. Shows "Connected ✓" — done in 3 steps, 1 app

Changes:
- nine_router.py: return real authUrl for auth_code providers
  instead of redirecting to 9Router dashboard
- nine_router.py: add exchange_oauth() proxy function
- agents.py: add POST /subscriptions/exchange endpoint
- Settings.tsx: popup + window.addEventListener('message') for
  OAuth callback, with polling fallback

Before: 8 steps across 2 apps
After: 3 steps in 1 app (click → sign in → done)

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-22 10:52:56 -07:00
..
2026-03-13 12:09:25 -07:00
2026-03-13 12:09:25 -07:00
2026-03-13 12:09:25 -07:00
2026-03-13 12:09:25 -07:00