fix: single-source Codex plugin manifest (supersedes #19)#20
fix: single-source Codex plugin manifest (supersedes #19)#20JanKulhavy wants to merge 6 commits into
Conversation
The Codex plugin staging directory shipped a byte-for-byte copy of .codex-plugin/plugin.json. Since .versionrc.json only bumps the root file on release, the subdirectory copy — which is what users actually install via the .agents marketplace — would silently drift after the next version bump. Replace it with a relative symlink to the root manifest so the single source of truth stays in sync automatically. Matches the pattern already used for .mcp.json, skills/, and assets/ in the same dir. Addresses Copilot review comments on #19. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
There was a problem hiding this comment.
Pull request overview
This PR aims to prevent Codex plugin manifest version drift by making the Codex staging plugin manifest single-sourced (via symlink to the root .codex-plugin/plugin.json), while also updating Codex-facing documentation and adjusting the Codex marketplace entry to point at the staging directory users install from.
Changes:
- Update Codex installation/troubleshooting docs (README + MCP reference skill) with a manual
codex mcp add/codex mcp loginfallback. - Extend the Codex plugin manifest
longDescriptionwith the same fallback instructions. - Update
.agents/plugins/marketplace.jsonto reference the Codex staging directory.
Reviewed changes
Copilot reviewed 8 out of 8 changed files in this pull request and generated 1 comment.
| File | Description |
|---|---|
skills/make-mcp-reference/SKILL.md |
Adds “Codex Quick Setup” manual MCP registration instructions. |
README.md |
Documents manual Codex MCP registration steps (and a CLI equivalent snippet). |
.codex-plugin/plugin.json |
Updates longDescription to include manual MCP registration commands. |
.agents/plugins/marketplace.json |
Changes local plugin source.path to the Codex staging directory (currently appears incorrect relative to file location). |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
This reverts commit f868a0f. The accepted suggestion changed source.path from "./plugins/make-skills-codex" to "../../plugins/make-skills-codex", which is doc-incorrect. Per https://developers.openai.com/codex/plugins/build: "Codex resolves `source.path` relative to the marketplace root, not relative to the `.agents/plugins/` folder." "Keep `source.path` relative to the marketplace root, start it with `./`, and keep it inside that root." Resolution check: "./plugins/make-skills-codex" -> $REPO_ROOT/plugins/make-skills-codex (valid) "../../plugins/make-skills-codex" -> outside $REPO_ROOT (broken) The "../../…" form only resolves to the plugin dir if paths are treated as relative to `.agents/plugins/`, which the docs explicitly call out as wrong. PR #17 originally shipped "./" and Codex successfully registered the marketplace (see ~/.codex/config.toml), which is only possible if paths resolve from the repo root — confirming the docs. Restores the doc-compliant value.
|
Reverted The suggestion changed Docs (https://developers.openai.com/codex/plugins/build):
Resolution check (marketplace root =
Empirical confirmation: PR #17 originally shipped Please don't re-apply the Copilot suggestion. |
Summary
Supersedes #19. Keeps every change from #19 (the staging subdirectory, marketplace path update, README and SKILL.md docs,
longDescriptionfallback text) plus resolves Copilot's two review comments by eliminating the duplicate Codex manifest.plugins/make-skills-codex/.codex-plugin/plugin.json(a byte-for-byte copy of the root manifest) with a relative symlink to../../../.codex-plugin/plugin.json..versionrc.jsonstill bumps only the root file, and the staging subdirectory (which is what users actually install via.agents/plugins/marketplace.json) now reflects the bumped version automatically via the symlink..mcp.json,skills/, andassets/.Why not merge #19 as-is
Copilot flagged that the duplicated
plugin.jsonwould silently drift after the next version bump, because.versionrc.jsononly updates.codex-plugin/plugin.json. The subdirectory copy — the one Codex installs from — would ship a stale"version"forever. This PR fixes that by making the subdirectory entry a symlink, so there is only one file to maintain.What stays the same as #19
.agents/plugins/marketplace.json→source.path: "./plugins/make-skills-codex".mcp.json,skills,assetsREADME.mdandskills/make-mcp-reference/SKILL.mddocs (manualcodex mcp add makefallback)longDescriptionupdated in the (single) root manifestTest plan
git ls-files -s plugins/make-skills-codex/shows all four entries as mode120000(symlink)readlink plugins/make-skills-codex/.codex-plugin/plugin.jsonresolves to../../../.codex-plugin/plugin.jsondiff -q plugins/make-skills-codex/.codex-plugin/plugin.json .codex-plugin/plugin.jsonreports identical (via symlink follow)npx standard-version --dry-run --release-as patchreports.codex-plugin/plugin.jsonbumped; subdir follows via symlink (verified locally)codex plugin marketplace add .→ install) copies onlyskills/,.codex-plugin/,.mcp.json,assets/— nonode_modules/,.git/,dist/./build.shproduces dist zips unchanged🤖 Generated with Claude Code