claude-code - 💡(How to fix) Fix [Feature Request] Support project-scoped local skills (`.claude/skills.local/` or `local: true` frontmatter) [1 comments, 2 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
anthropics/claude-code#45094Fetched 2026-04-09 08:13:25
View on GitHub
Comments
1
Participants
2
Timeline
3
Reactions
0
Timeline (top)
labeled ×2commented ×1
RAW_BUFFERClick to expand / collapse

Bug Description Skills currently support Project (.claude/skills/), User (~/.claude/skills/), Enterprise, and Plugin scopes — but no documented equivalent to settings.local.json or CLAUDE.local.md for personal, project-scoped skills.

Use case: I want skills that are specific to one project but NOT shared with my team via version control. Today I have to either:

  1. Gitignore .claude/skills/ wholesale (breaks if the team commits shared skills there)
  2. Use .git/info/exclude with a naming convention like local-* (works but undocumented)
  3. Dump them in ~/.claude/skills/ where they load in every project (wrong scope)

Proposed: support .claude/skills.local/ (auto-gitignored like settings.local.json) or a local: true field in SKILL.md frontmatter that opts a skill out of being shared.

extent analysis

TL;DR

Support for a project-scoped, non-shared skills directory, such as .claude/skills.local/, is likely the most straightforward fix.

Guidance

  • Consider adding a .claude/skills.local/ directory that is auto-gitignored, similar to settings.local.json, to store project-specific skills that should not be shared with the team.
  • Evaluate the feasibility of introducing a local: true field in the SKILL.md frontmatter to opt-out of sharing specific skills.
  • Assess the trade-offs between using .git/info/exclude with a naming convention like local-* versus implementing a more explicit solution like .claude/skills.local/.
  • Review the current implementation of scope handling for skills to determine the best approach for integrating the proposed solution.

Example

No code snippet is provided as the issue focuses on proposing a new feature rather than fixing a specific code issue.

Notes

The proposed solutions aim to address the lack of a documented equivalent to settings.local.json or CLAUDE.local.md for personal, project-scoped skills. However, the implementation details and potential interactions with existing features are not fully explored in the issue.

Recommendation

Apply a workaround, such as using .git/info/exclude with a naming convention like local-*, until a more explicit solution like .claude/skills.local/ or a local: true field in SKILL.md frontmatter is implemented, as it provides a functional, albeit undocumented, way to manage project-specific skills without sharing them with the team.

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING