Constraint: Codex installs and removes plugin units, not individual SKILL.md files.\nRejected: Keep every skill in one eapil-skills bundle | Users could not selectively install only the needed skill pack.\nConfidence: high\nScope-risk: moderate\nDirective: Add future skills as separate eapil-* plugins unless they are intentionally bundled.\nTested: python json.tool for marketplace and plugin manifests; validate_plugin.py for all 13 plugins; codex plugin marketplace add . --json; codex plugin list --marketplace eapil-skill-market --available --json; codex plugin add eapil-pdf/eapil-xlsx/eapil-threejs-fundamentals.\nNot-tested: Remote Git marketplace refresh after push.
Constraint: Codex Git sparse checkout preserves selected paths, so plugins/codex is not treated as the marketplace root by the CLI.\nRejected: Require users to rely on a single plugins/codex sparse path | The CLI leaves the manifest nested and rejects the marketplace root.\nConfidence: high\nScope-risk: narrow\nDirective: Keep the root .agents/plugins/marketplace.json as the primary Git entrypoint.\nTested: python json.tool on both marketplace manifests; validate_plugin.py.\nNot-tested: Remote Git marketplace add after this commit.