fix(skills): hide internal Claude Code skills from public skills CLI#246
fix(skills): hide internal Claude Code skills from public skills CLI#246rafa-thayto merged 1 commit intomainfrom
Conversation
The vercel-labs `skills` CLI scans `.claude/skills/` as a default discovery path, so `bunx skills@latest add clerk/cli` was surfacing `audit-clerk-skill` and `changesets` alongside the public `clerk` skill. Marking them with `metadata.internal: true` removes them from default discovery while leaving them available to Claude Code locally (and to maintainers via `INSTALL_INTERNAL_SKILLS=1`).
|
📝 WalkthroughWalkthroughThis pull request adds an Estimated code review effort🎯 1 (Trivial) | ⏱️ ~2 minutes 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
✏️ Tip: You can configure your own custom pre-merge checks in the settings. Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Review rate limit: 0/1 reviews remaining, refill in 60 minutes.Comment |
There was a problem hiding this comment.
🧹 Nitpick comments (2)
.claude/skills/audit-clerk-skill/SKILL.md (1)
1-10: LGTM:metadata.internal: trueadded cleanly to SKILL.md frontmatter.The
metadata.internal: trueaddition is correctly placed within the YAML frontmatter and uses valid YAML structure, without impacting any of the audit skill workflow text. This should hideaudit-clerk-skillfrom the public skills picker by default, while still allowing maintainers to install it withINSTALL_INTERNAL_SKILLS=1.Also run the provided CLI verification steps (default vs
INSTALL_INTERNAL_SKILLS=1) to confirm the picker behavior matches the Before/After expectations.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.claude/skills/audit-clerk-skill/SKILL.md around lines 1 - 10, The frontmatter change adding metadata.internal: true to the audit-clerk-skill SKILL.md is correct; please run the CLI verification steps to confirm picker behavior: verify the skill is hidden by default and appears when INSTALL_INTERNAL_SKILLS=1 is set, using the skill name "audit-clerk-skill" and checking the SKILL.md frontmatter field metadata.internal; if behavior differs, revert or correct the frontmatter formatting and re-run the verification to ensure the picker matches Before/After expectations..claude/skills/changesets/SKILL.md (1)
1-11: LGTM:metadata.internal: trueadded cleanly to SKILL.md frontmatter.The YAML frontmatter change is syntactically valid (
metadataroot key withinternal: truenested) and is isolated to the metadata only, leaving the rest of the skill instructions untouched. This should allow the skills CLI to hidechangesetsfrom default discovery while keeping it installable whenINSTALL_INTERNAL_SKILLS=1is set.Please run the PR’s manual checks:
bunx skills@latest add clerk/clishould list onlyclerk, andINSTALL_INTERNAL_SKILLS=1 bunx skills@latest add clerk/clishould listclerk,audit-clerk-skill, andchangesets.🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed. In @.claude/skills/changesets/SKILL.md around lines 1 - 11, The frontmatter change adding metadata.internal: true to the SKILL.md for the "changesets" skill is fine but you must verify behavior manually: run the two checks specified (bunx skills@latest add clerk/cli and INSTALL_INTERNAL_SKILLS=1 bunx skills@latest add clerk/cli) and confirm that without INSTALL_INTERNAL_SKILLS only "clerk" is listed and with INSTALL_INTERNAL_SKILLS both "clerk", "audit-clerk-skill", and "changesets" are listed; if the results differ, revert or adjust the metadata key in the SKILL.md (ensure metadata: internal: true is present in the frontmatter of the changesets skill) so discovery respects the INSTALL_INTERNAL_SKILLS flag and re-run the commands until the expected listings occur.
🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.
Nitpick comments:
In @.claude/skills/audit-clerk-skill/SKILL.md:
- Around line 1-10: The frontmatter change adding metadata.internal: true to the
audit-clerk-skill SKILL.md is correct; please run the CLI verification steps to
confirm picker behavior: verify the skill is hidden by default and appears when
INSTALL_INTERNAL_SKILLS=1 is set, using the skill name "audit-clerk-skill" and
checking the SKILL.md frontmatter field metadata.internal; if behavior differs,
revert or correct the frontmatter formatting and re-run the verification to
ensure the picker matches Before/After expectations.
In @.claude/skills/changesets/SKILL.md:
- Around line 1-11: The frontmatter change adding metadata.internal: true to the
SKILL.md for the "changesets" skill is fine but you must verify behavior
manually: run the two checks specified (bunx skills@latest add clerk/cli and
INSTALL_INTERNAL_SKILLS=1 bunx skills@latest add clerk/cli) and confirm that
without INSTALL_INTERNAL_SKILLS only "clerk" is listed and with
INSTALL_INTERNAL_SKILLS both "clerk", "audit-clerk-skill", and "changesets" are
listed; if the results differ, revert or adjust the metadata key in the SKILL.md
(ensure metadata: internal: true is present in the frontmatter of the changesets
skill) so discovery respects the INSTALL_INTERNAL_SKILLS flag and re-run the
commands until the expected listings occur.
ℹ️ Review info
⚙️ Run configuration
Configuration used: Organization UI
Review profile: CHILL
Plan: Pro
Run ID: 050b5548-fe4e-4d97-8f3f-b47b3d67548b
📒 Files selected for processing (2)
.claude/skills/audit-clerk-skill/SKILL.md.claude/skills/changesets/SKILL.md
Summary
skillsCLI scans.claude/skills/as a default discovery path, sobunx skills@latest add clerk/cliwas surfacing the project-internalaudit-clerk-skillandchangesetsskills alongside the publicclerkskill.metadata.internal: trueto both internal SKILL.md frontmatters. Per theskillsCLI docs, this hides them from default discovery while leaving them installable behindINSTALL_INTERNAL_SKILLS=1for maintainers.metadatablock, so local invocation of these skills is unaffected.Before
After
Test plan
bunx skills@latest add clerk/cliand confirm onlyclerkappears in the picker.INSTALL_INTERNAL_SKILLS=1 bunx skills@latest add clerk/cliand confirm all three skills are listed.audit-clerk-skillandchangesetsfrom.claude/skills/locally.