openai / openai/codex

Windows: default Sites plugin cannot be removed; disable/details return 404 while uninstall returns 403

Open
#46,166 2 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

app bug skills windows-os
Dominant language
Rust
Stars
125k
Forks
19.4k
PR merge metrics
PR metrics pending

Description

Summary

Sites is presented as administrator-configured/default-installed in the Windows desktop app. I want to opt out, but its management endpoints disagree: fetching details and disabling return 404 Plugin not found, while uninstalling returns 403 Installed-by-default plugins cannot be uninstalled. The administrator label does not explain who supplied the policy or how a user can opt out.

Environment

  • Windows desktop app package: 26.911.7940.0
  • App-managed CLI: codex-cli 0.155.0-alpha.2.6
  • Also observed earlier in this session before updating from desktop package 26.908.9136.0
  • Plugin: sites@openai-curated-remote, cached version 0.1.65
  • Remote plugin ID: plugin_connector_1p_689987207de08191979cf68eca2941c6

Steps / observed behavior

  1. Open the plugin management UI and locate Sites.
  2. Try opening details, disabling, and uninstalling it.
  3. Observe the conflicting errors below.
  4. Removing the local Sites cache does not provide a reliable persistent opt-out: I observed the folder reappear. The exact download trigger has not been captured, so automatic reinstallation is a symptom rather than a proven implementation cause.

Sanitized desktop log evidence (2026-09-17, UTC)

  • 07:55:55: plugin_uninstall_succeeded pluginId=sites@openai-bundled (the earlier bundled entry; distinct from the remote entry).
  • 08:10:07: GET /ps/plugins/plugin_connector_1p_689987207de08191979cf68eca2941c6 -> 404 Plugin not found.
  • 08:10:43 and 08:28:42: POST /ps/plugins/plugin_connector_1p_689987207de08191979cf68eca2941c6/disable -> 404 Plugin not found.
  • 08:15:12: uninstall request to https://chatgpt.com/backend-api/ps/plugins/plugin_connector_1p_689987207de08191979cf68eca2941c6/uninstall -> 403 Installed-by-default plugins cannot be uninstalled.

A plugin dependency lookup separately reported catalog oai-maintained-plugins, installation policy installed_by_default, installed true, and user-enabled true.

Current mitigation and important qualification

The following local overrides are present:

[apps.connector_20205bf7d4e99a89d7154bb849718324]
enabled = false

[[skills.config]]
name = "sites:sites-building"
enabled = false

[[skills.config]]
name = "sites:sites-hosting"
enabled = false

[[skills.config]]
name = "sites:sites-preview-troubleshooting"
enabled = false

After these overrides, a fresh codex plugin list --json did not include Sites, and the current session's available skill list also no longer included Sites. However, the directory under ~/.codex/plugins/cache/openai-curated-remote/sites remained. Cache presence alone does not prove that the plugin is active. This report distinguishes functional suppression from removal of the default installation record/cache.

Expected behavior

  • Provide a supported persistent per-plugin opt-out for default Sites without disabling unrelated remote plugins or browser/computer-use functionality.
  • Make details, disable, uninstall, and installed-state reporting consistent.
  • Distinguish platform-provided defaults from organization-admin installations in the UI.
  • Explain whether disabled plugin caches may be retained or downloaded again, and provide supported cleanup behavior.

Related

Related behavior reported for Default templates in #32513. This report supplies Sites-specific Windows evidence, including the 404/403 inconsistency. No evidence was found that an SSH host or school server caused this local installation.

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by tracing the plugin management requests for details, disable, uninstall, and installed-state reporting, then compare their handling of the installed_by_default policy. Reproduce the Windows Sites case using the supplied logs and local overrides. Done means a persistent per-plugin opt-out works and management responses, UI labels, and cache behavior are consistent.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust
Domain
backend-api-design, cli, desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Mostly clear
Newbie friendliness
52/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.