knowledge-work-plugins is a curated surface, but unlike claude-plugins-official
it had no gate on external pull requests — so the open-PR queue had accumulated
~87 external contributions (README edits, "fixes" to first-party plugins,
unsolicited new community plugins) that we do not accept here.
Ports the established -official mechanism verbatim:
- close-external-prs.yml — on PR opened, if the author is not an org member
(write/admin) and the PR is not an in-scope contribution, posts the standard
redirect comment (submit via clau.de/plugin-directory-submission) and closes it.
- external-pr-scope-guard.yml — advisory (NOT required) check surfacing the
in-scope carve-out for reviewers.
- .github/scripts/external-pr-scope.js — shared trust-the-source-repo logic
(MARKETPLACE = .claude-plugin/marketplace.json, matches this repo).
Carve-out (verbatim from -official): a non-member PR may stay open only if it
ADDS marketplace.json entries whose source repo already backs a live plugin
here, and changes nothing else. Members + the bump bot are exempt. Kill switch:
repo var DISABLE_EXTERNAL_PR_CHECK=true.
Prospective only (fires on `opened`) — does not touch the existing open queue.
Co-authored-by: Claude Opus 4.8 <noreply@anthropic.com>