Skip to content

Refine Codex and OpenCode OAuth integration status#1048

Open
ishaanxgupta wants to merge 4 commits into
mainfrom
codex/codex-oauth-integrations
Open

Refine Codex and OpenCode OAuth integration status#1048
ishaanxgupta wants to merge 4 commits into
mainfrom
codex/codex-oauth-integrations

Conversation

@ishaanxgupta
Copy link
Copy Markdown
Contributor

@ishaanxgupta ishaanxgupta commented Jun 4, 2026

What changed

  • Added /auth/agent-connect in the web app as an alias for the agent OAuth connect page and fixed the Codex icon on that flow.
  • Updated integrations so plugin cards only show connected after the generated plugin key has actually been used by the plugin.
  • Replaced the connected dropdown with a modal-based connection detail view.
  • Removed backend-schema details like saved-note/conversation format and session IDs from plugin memory modals.
  • Updated OpenCode setup copy to use the plugin browser login flow instead of manual API-key export, and added its GitHub link.

Why

Generating a plugin key from the web UI is only setup, not a completed plugin connection. The card should not show Connected until the plugin/OAuth flow actually authenticates and uses the key.

@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented Jun 4, 2026

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Updated (UTC)
✅ Deployment successful!
View logs
supermemory-mcp 3d50394 Jun 04 2026, 09:39 PM

@cloudflare-workers-and-pages
Copy link
Copy Markdown

cloudflare-workers-and-pages Bot commented Jun 4, 2026

Deploying with  Cloudflare Workers  Cloudflare Workers

The latest updates on your project. Learn more about integrating Git with Workers.

Status Name Latest Commit Preview URL Updated (UTC)
✅ Deployment successful!
View logs
supermemory-app 3d50394 Commit Preview URL

Branch Preview URL
Jun 04 2026, 09:40 PM

@ishaanxgupta ishaanxgupta changed the title [codex] Refine Codex OAuth and integration status Refine Codex OAuth and integration status Jun 4, 2026
@ishaanxgupta ishaanxgupta marked this pull request as ready for review June 4, 2026 12:56
@graphite-app graphite-app Bot requested a review from Dhravya June 4, 2026 12:56
@claude
Copy link
Copy Markdown

claude Bot commented Jun 4, 2026

Claude finished @MaheshtheDev's task in 1m 17s —— View job


Reviewing PR Changes

  • Fetch PR diff and existing review comments
  • Analyze changes for bugs, security issues, and logic errors
  • Post review summary

Overview: This PR refines the Codex/OpenCode OAuth integration to show plugins as "connected" only after the API key has actually been used by the plugin, replacing the dropdown with a modal-based connection detail view.

Issues found: None — this looks good to ship.

The implementation is clean and correct:

  • Active vs Setup distinction (integrations-view.tsx:80-110): The parsePluginAuthKeys function correctly separates keys with lastRequest (active) from those without (setup-only). The enabled === false check properly allows undefined/null to pass through.

  • Plugin ID normalization (plugin-catalog.ts:155-158): normalizePluginClientId correctly maps various client ID formats (e.g., claude-codeclaude_code, codexcodex) using both explicit mappings and fallback underscore conversion.

  • Callback URL enhancement (connect/page.tsx:202): Adding api_url to the OAuth callback is a good practice — it lets the plugin know which API endpoint to use without hardcoding.

  • Error handling: JSON.parse operations are wrapped in try/catch blocks, null checks are in place throughout, and type safety is maintained with the ListedApiKey type.

  • Accessibility: Modal dialogs have proper DialogTitle (including sr-only variants) and aria-labels on close buttons.

  • Icon fix (connect/page.tsx:102): Changed Codex icon from .svg to .png to match the actual asset.

Score: 10/10

@ishaanxgupta
Copy link
Copy Markdown
Contributor Author

ishaanxgupta commented Jun 4, 2026

image image image image image

Opencode
image

Copy link
Copy Markdown

@claude claude Bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Overview: This PR refines the Codex OAuth integration to only show plugins as "connected" after the API key has actually been used, replacing the dropdown with a modal-based connection detail view.

Issues found: None — this looks good to ship.

The implementation is clean:

  • The lastRequest filtering correctly ensures only keys that have been used by the plugin are shown as connected
  • The enabled === false check properly handles explicitly disabled keys while allowing undefined/null to pass
  • Type safety is well maintained with the new ListedApiKey type
  • The normalizePluginClientId function correctly maps various plugin ID formats
  • Error handling is adequate (try/catch for JSON.parse, proper null checks)
  • The modal implementation has proper accessibility (DialogTitle, aria-labels)

Score: 10/10

@ishaanxgupta ishaanxgupta changed the title Refine Codex OAuth and integration status Refine Codex and OpenCode OAuth integration status Jun 4, 2026
- Show plugins as Active (used) vs Finish setup (key, no use) vs Connect
- Active pill becomes subtle ghost status; dedicated + button connects another agent
- Support multiple connections per plugin with count + manage modal
- Mirror pattern for connectors: subtle connected status + add-knowledge shortcut
- Move Pro to subtle accent on name row, Docs alone top-right
- Wrap items into a grid for any specific category filter (rails only on All)
- Keep featured hero visible on the Active filter
@MaheshtheDev MaheshtheDev enabled auto-merge (squash) June 4, 2026 21:36
Copy link
Copy Markdown
Member

@MaheshtheDev MaheshtheDev left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants