fix(plugin): exclude pr-loop-self from downstream package (#76) - #77
Merged
Conversation
pr-loop-self.md is a self-hosting-only command (arms this repo's own PR loop against .claude/self/gates.json) but was living in .claude/commands/, so it was auto-discovered and packaged into every downstream plugin install alongside the consumer-facing commands. Move it to .claude/self/pr-loop-self.md and give plugin.json an explicit commands allowlist (harden, pr-loop, setup-orchestrator, sync-orchestrator, test-pr) so commands/ auto-discovery no longer applies. The file remains usable in-repo by asking Claude to read and follow its instructions directly; it is no longer a registered /pr-loop-self slash command since project-level command discovery only scans .claude/commands/ and .claude/skills/. Updated .claude/self/README.md and .claude/.claude-plugin/README.md to reflect the new path and behavior. Fixes #76 Co-Authored-By: Claude Haiku 4.5 <[email protected]> Claude-Session: https://claude.ai/code/session_0135JVnX98DjPxTRzQZRy82q
…elf refs Give plugin.json an explicit commands allowlist (harden, pr-loop, setup-orchestrator, sync-orchestrator, test-pr) so the default commands/ directory-wide auto-discovery is disabled and the just-moved .claude/self/pr-loop-self.md (self-hosting-only) is no longer packaged into downstream plugin installs. Update .claude/self/README.md, .claude/.claude-plugin/README.md, and pr-loop-self.md's own in-file /loop suggestion to reflect the new path and that it is no longer a registered /pr-loop-self slash command (project-level command discovery only scans .claude/commands/ and .claude/skills/) — it is run in-repo by asking Claude to read and follow its instructions directly. Fixes #76 Co-Authored-By: Claude Haiku 4.5 <[email protected]> Claude-Session: https://claude.ai/code/session_0135JVnX98DjPxTRzQZRy82q
#76) USAGE.md and MIGRATION.md still described pr-loop-self.md as a `/orchestrator:pr-loop-self` slash command living in `.claude/commands/`. It now lives under `.claude/self/`, isn't plugin-distributed, and isn't a registered slash command — update both docs to match, consistent with .claude/self/README.md's "ask Claude to read and follow" wording. Co-Authored-By: Claude Haiku 4.5 <[email protected]> Claude-Session: https://claude.ai/code/session_0135JVnX98DjPxTRzQZRy82q
robercano
requested changes
Jul 8, 2026
robercano
left a comment
Owner
There was a problem hiding this comment.
I want the command still be available as a slash command for this repo but not for the downstream repo, is it possible?
Collaborator
Author
Owner feedback addressedThe original approach in this PR (move out of entirely) conflicted with the owner's feedback: they want the command available as a slash command in this repo, but excluded from downstream packages. Solution implemented on feat/issue-76-plugin-self-cmd-isolation:✅ Slash command available locally: is kept and discoverable as Changes:
Ready for PR re-check and merge. |
robercano
approved these changes
Jul 8, 2026
This was referenced Jul 8, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Moves self-hosting-only
/pr-loop-selfcommand out of packaged plugin commands. The command usesGATES_FILE=.claude/self/gates.jsonand self-specific module labels, making it unsuitable for downstream consumers..claude/commands/pr-loop-self.md→.claude/self/pr-loop-self.md.claude/.claude-plugin/plugin.jsonwith explicitcommandsallowlist (excludespr-loop-self)USAGE.md,MIGRATION.md) to reflect new location and usage patternHow to use
/pr-loop-selfin this repo after this changeAsk Claude to read and follow
.claude/self/pr-loop-self.mddirectly (e.g., "read and run .claude/self/pr-loop-self.md"), rather than invoking it as a slash command. See.claude/self/README.mdfor the full self-adapter contract.Test plan
.claude/self/gates.json.claude/commands/contains only consumer commands; plugin.json allowlist matches;.claude/self/pr-loop-self.mdexists and is not a registered slash commandCloses #76
🤖 Generated by orchestrator | Issue #76