Describe the feature or problem you'd like to solve
gh skill install currently looks for skills in the following directory patterns:
skills/*/SKILL.md
skills/{scope}/*/SKILL.md
*/SKILL.md
plugins/*/skills/*/SKILL.md
However, many repositories that were built for Claude Code organize their skills under .claude/skills/*/SKILL.md, which mirrors Claude Code's local install location (~/.claude/skills/ and <project>/.claude/skills/). For teams who already maintain shared skills in .claude/skills/ on GitHub, gh skill install <owner>/<repo> fails with:
no skills found in <owner>/<repo>
Expected skills in skills/*/SKILL.md, skills/{scope}/*/SKILL.md,
*/SKILL.md, or plugins/*/skills/*/SKILL.md
This repository may be a curated list rather than a skills publisher
Proposed solution
Add .claude/skills/*/SKILL.md (and potentially other host-specific layouts such as .github/skills/, .agents/skills/) to the discovery patterns.
Alternatively, a --path <subdir> or --discovery <glob> flag on gh skill install would let maintainers opt in without requiring repo-layout migration. Prior art: Vercel's npx skills add accepts tree URLs like .../tree/main/<subdir>, and ai-ecoverse/gh-upskill exposes -p/--path.
Why this matters
- Claude Code, GitHub Copilot CLI, and Gemini CLI all document host-specific layouts (
.claude/skills/, .github/skills/, .gemini/skills/). Requiring a neutral top-level skills/ forces maintainers to either restructure their repos or maintain parallel trees.
- The
--agent claude-code flag already exists on install, so there's precedent for host-aware behavior on the install side. Making discovery host-aware (or just additive with .claude/skills/) closes the loop.
Workaround
Moving/symlinking .claude/skills to skills/ works but splits the source of truth from where Claude Code natively reads skills.
Additional context
Describe the feature or problem you'd like to solve
gh skill installcurrently looks for skills in the following directory patterns:skills/*/SKILL.mdskills/{scope}/*/SKILL.md*/SKILL.mdplugins/*/skills/*/SKILL.mdHowever, many repositories that were built for Claude Code organize their skills under
.claude/skills/*/SKILL.md, which mirrors Claude Code's local install location (~/.claude/skills/and<project>/.claude/skills/). For teams who already maintain shared skills in.claude/skills/on GitHub,gh skill install <owner>/<repo>fails with:Proposed solution
Add
.claude/skills/*/SKILL.md(and potentially other host-specific layouts such as.github/skills/,.agents/skills/) to the discovery patterns.Alternatively, a
--path <subdir>or--discovery <glob>flag ongh skill installwould let maintainers opt in without requiring repo-layout migration. Prior art: Vercel'snpx skills addaccepts tree URLs like.../tree/main/<subdir>, andai-ecoverse/gh-upskillexposes-p/--path.Why this matters
.claude/skills/,.github/skills/,.gemini/skills/). Requiring a neutral top-levelskills/forces maintainers to either restructure their repos or maintain parallel trees.--agent claude-codeflag already exists on install, so there's precedent for host-aware behavior on the install side. Making discovery host-aware (or just additive with.claude/skills/) closes the loop.Workaround
Moving/symlinking
.claude/skillstoskills/works but splits the source of truth from where Claude Code natively reads skills.Additional context
gh skill).claude/skillsas a valid project-scoped location)