Support portable Agent Plugins throughout installation - #36544
Merged
copyberry[bot] merged 1 commit intoAug 2, 2026
Merged
Conversation
## Why Agent Plugins use a schema-declared root `plugin.json` and can have dotted names or versions that do not fit Codex's directory-safe version format. The packaging and installation paths still assumed the legacy manifest layout and identifier rules. ## What changed - Recognize valid root Agent Plugin manifests when discovering, packing, and installing plugins, while leaving unrelated root manifests on the legacy path. - Accept safe dotted plugin names, default missing Agent Plugin versions to `1.0.0`, and derive stable directory-safe versions when necessary without rewriting the portable manifest. - Skip legacy command migration for Agent Plugins and reject symlinks or other unsupported file types while copying plugin sources. ## Testing Add coverage for portable bundle round trips, manifest discovery, dotted names, version handling, command preservation, and symlink rejection. GitOrigin-RevId: 61476c4c4100495842253d8b429c0b896490962d
copyberry
Bot
force-pushed
the
copyberry/codex-internal-to-codex-oss/61476c4c4100495842253d8b429c0b896490962d
branch
from
August 2, 2026 02:30
8774cd1 to
2b5bdcf
Compare
copyberry
Bot
deleted the
copyberry/codex-internal-to-codex-oss/61476c4c4100495842253d8b429c0b896490962d
branch
August 2, 2026 02:32
niejiaqiang
temporarily deployed
to
issue-triage
August 2, 2026 03:51 — with
GitHub Actions
Inactive
niejiaqiang
temporarily deployed
to
issue-triage
August 2, 2026 03:51 — with
GitHub Actions
Inactive
niejiaqiang
temporarily deployed
to
issue-triage
August 2, 2026 03:51 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:19 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:19 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:19 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:19 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:19 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:19 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:19 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:19 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:20 — with
GitHub Actions
Inactive
xiedongqingxiao-ops
temporarily deployed
to
issue-triage
August 2, 2026 04:20 — with
GitHub Actions
Inactive
DanielMarius
temporarily deployed
to
issue-triage
August 2, 2026 04:28 — with
GitHub Actions
Inactive
DanielMarius
temporarily deployed
to
issue-triage
August 2, 2026 04:28 — with
GitHub Actions
Inactive
DanielMarius
temporarily deployed
to
issue-triage
August 2, 2026 04:28 — with
GitHub Actions
Inactive
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Support portable Agent Plugins throughout installation
Why
Agent Plugins use a schema-declared root
plugin.jsonand can have dotted names or versions that do not fit Codex's directory-safe version format. The packaging and installation paths still assumed the legacy manifest layout and identifier rules.What changed
1.0.0, and derive stable directory-safe versions when necessary without rewriting the portable manifest.Testing
Add coverage for portable bundle round trips, manifest discovery, dotted names, version handling, command preservation, and symlink rejection.