Skip to content

feat: add codex target with a per-plugin marketplace-entry passthrough#4

Open
steve-calvert-glean wants to merge 1 commit into
mainfrom
feat/codex-target
Open

feat: add codex target with a per-plugin marketplace-entry passthrough#4
steve-calvert-glean wants to merge 1 commit into
mainfrom
feat/codex-target

Conversation

@steve-calvert-glean

Copy link
Copy Markdown
Contributor

Summary

Adds the codex target (OpenAI Codex CLI plugin format) and a general per-plugin entry passthrough.

  • codex emitter/validator — emits .agents/plugins/marketplace.json plus a per-plugin .codex-plugin/plugin.json and optional .mcp.json, primary-sourced from the Codex plugin docs. Slots into the existing emitPlugins engine and the adapter registry.
  • entry passthrough — a per-plugin field, symmetric with manifest, deep-merged into the generated marketplace entry. Target-agnostic; lets authors supply entry metadata pluginpack cannot derive (e.g. Codex policy/category) instead of guessing.
  • CLI --target usage strings now derive from the target registry (last hardcoded target list removed).

Verification

  • 28/28 tests pass, including a new codex conformance test asserting the documented layout and that the entry passthrough lands in the marketplace entry.
  • Before/after build diff confirms the existing cursor/claude/antigravity/copilot output is byte-identical (empty entry is a no-op).
  • typecheck, lint, build, docs all green.

🤖 Generated with Claude Code

Add the OpenAI Codex CLI plugin target: a repo-scoped .agents/plugins/marketplace.json plus a per-plugin .codex-plugin/plugin.json and optional .mcp.json, matching the documented Codex plugin format. It reuses the shared emitPlugins engine and the adapter registry.

Also add a general, target-agnostic per-plugin entry passthrough (symmetric with manifest) that deep-merges into the generated marketplace entry, so authors can supply fields pluginpack cannot derive, e.g. Codex policy/category. The existing four targets' output is byte-identical.

CLI --target usage strings now derive from the target registry.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@steve-calvert-glean steve-calvert-glean added the enhancement New feature or request label Jun 18, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant