Let owner-operated Codex agents use connected account apps#100973
Conversation
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: d28ce48144
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
|
Codex review: needs real behavior proof before merge. Reviewed July 6, 2026, 11:47 AM ET / 15:47 UTC. Summary PR surface: Source +256, Tests +376, Docs +51. Total +683 across 18 files. Reproducibility: not applicable. This PR adds an opt-in Codex account-app capability rather than reporting a broken existing behavior. Source review traced the intended path, but no live after-fix proof is posted. Review metrics: 2 noteworthy metrics.
Stored data model Merge readiness Overall follows the weaker of proof and patch quality, so missing proof can cap an otherwise strong patch. Rank-up moves:
Proof guidance:
Risk before merge
Maintainer options:
Next step before merge
Maintainer decision needed
Security Review findings
Review detailsBest possible solution: Land a maintainer-approved explicit opt-in that keeps default deny, plugin precedence, persisted thread allowlists, and docs/proof aligned before merge. Do we have a high-confidence way to reproduce the issue? Not applicable: this PR adds an opt-in Codex account-app capability rather than reporting a broken existing behavior. Source review traced the intended path, but no live after-fix proof is posted. Is this the best way to solve the issue? Unclear until maintainer approval and proof: the implementation is in the right Codex plugin boundary and preserves fail-closed inventory, plugin precedence, and binding replay, but account-wide connected app exposure is a product/security decision. Full review comments:
Overall correctness: patch is correct AGENTS.md: found and applied where relevant. Codex review notes: model internal, reasoning high; reviewed against 30e5dfcf0295. Label changesLabel changes:
Label justifications:
Evidence reviewedPR surface: Source +256, Tests +376, Docs +51. Total +683 across 18 files. View PR surface stats
What I checked:
Likely related people:
What the crustacean ranks mean
Shiny media proof means a screenshot, video, or linked artifact directly shows the changed behavior. Runtime, network, CSP, and security claims still need visible diagnostics. How this review workflow works
|
|
@clawsweeper re-review |
|
🦞🧹 I asked ClawSweeper to review this item again. |
|
Merged via squash.
|
…100973) * Allow connected Codex account apps * Preserve explicit plugin app policy * Refresh Codex documentation map * Unify connected apps with Codex plugin policy * Format Codex configuration reference
…100973) * Allow connected Codex account apps * Preserve explicit plugin app policy * Refresh Codex documentation map * Unify connected apps with Codex plugin policy * Format Codex configuration reference
OpenClaw's native Codex integration currently exposes connector apps only when an installed curated plugin proves ownership of them. That is a useful default for shared agents, but it also means an owner-operated agent cannot opt into apps already connected to its Codex account when those apps do not have a packaged plugin, such as ChatGPT Meetings.
This extends the existing
codexPluginspolicy with an explicitallow_all_pluginsopt-in. When enabled, each new native Codex thread reads the complete account app inventory and snapshots every accessible app into the thread's explicit app allowlist. Inaccessible apps remain excluded, inventory failures fail closed, and explicit packaged-plugin policies still take precedence for overlapping app IDs.Account apps reuse the existing global
codexPlugins.allow_destructive_actionspolicy, including the existingautoandaskapproval behavior. The resulting app policy is persisted with the thread so resumed and forked threads keep the same bounded connector set.Live behavior was checked on the exact head
d7b6123325dd7aeff6f72fc0a0d987e3d41c6291, built as the production Docker image and connected to an authenticated Codex app-server. A fresh OpenClaw session admitted ChatGPT Meetings from the complete account inventory without a packaged plugin, invokedcodex_apps.chatgpt_meetings.find_all, and returned meeting metadata successfully. The persisted binding recorded the account-source app set with the existingaskdestructive-action policy. A second, fresh container resumed the same OpenClaw and Codex session, answered from the prior turn with zero connector calls, and preserved the same app-policy binding.