Skip to content

Support portable Agent Plugins throughout installation - #36544

Merged
copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/61476c4c4100495842253d8b429c0b896490962d
Aug 2, 2026
Merged

Support portable Agent Plugins throughout installation#36544
copyberry[bot] merged 1 commit into
mainfrom
copyberry/codex-internal-to-codex-oss/61476c4c4100495842253d8b429c0b896490962d

Conversation

@copyberry

@copyberry copyberry Bot commented Aug 2, 2026

Copy link
Copy Markdown

Support portable Agent Plugins throughout installation

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.

## 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
copyberry Bot force-pushed the copyberry/codex-internal-to-codex-oss/61476c4c4100495842253d8b429c0b896490962d branch from 8774cd1 to 2b5bdcf Compare August 2, 2026 02:30
@copyberry
copyberry Bot merged commit 2b5bdcf into main Aug 2, 2026
29 of 32 checks passed
@copyberry
copyberry Bot deleted the copyberry/codex-internal-to-codex-oss/61476c4c4100495842253d8b429c0b896490962d branch August 2, 2026 02:32
@github-actions github-actions Bot locked and limited conversation to collaborators Aug 2, 2026
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.