[DOCS] Plugin docs omit root-level `SKILL.md` discovery without a `skills/` subdirectory
Documentation Type
Missing documentation (feature not documented)
Documentation Location
https://code.claude.com/docs/en/plugins-reference
Section/Topic
Skills, Component path fields, and plugin skill file-location rules
Current Documentation
The docs currently describe plugin skills only as skills/ subdirectories by default:
Plugins add skills to Claude Code, creating/nameshortcuts that you or Claude can invoke. Location:skills/orcommands/directory in plugin root File format: Skills are directories withSKILL.md; commands are simple markdown files
The introductory plugin guide says the same thing:
Skills live in theskills/directory. Each skill is a folder containing aSKILL.mdfile. The folder name becomes the skill name, prefixed with the plugin's namespace (hello/in a plugin namedmy-first-plugincreates/my-first-plugin:hello).
The only documented root-level SKILL.md case is an explicit manifest override:
When a skill path points to a directory that contains aSKILL.mddirectly, for example"skills": ["./"]pointing to the plugin root, the frontmatternamefield inSKILL.mddetermines the skill's invocation name. This gives a stable name regardless of the install directory. Ifnameis not set in the frontmatter, the directory basename is used as a fallback.
What's Wrong or Missing?
Claude Code v2.1.142 added another plugin-skill discovery path: plugins with a root-level SKILL.md and no skills/ subdirectory are now surfaced as a skill.
That behavior is not documented in the default plugin layout or skill-location guidance.
As written now, the docs imply that plugin authors must either:
- create
skills/<name>/SKILL.md, or - add an explicit manifest
"skills": ["./"]override.
They do not explain that a plugin can now expose a skill from a root-level SKILL.md even without a skills/ subdirectory.
This leaves a new user-facing plugin packaging behavior undocumented, and it is especially confusing because the existing docs already mention a root-level SKILL.md only in the narrower manifest-override case.
Suggested Improvement
Update plugins-reference and the introductory plugins guide to document the new fallback clearly.
Minimum fix:
- In
plugins-reference, add a note near theSkillssection and file-location rules that if a plugin has noskills/subdirectory, a root-levelSKILL.mdis surfaced as a plugin skill. - Clarify the naming rule for that fallback, including that the
namefrontmatter field determines the invocation name when present. - In
plugins, add a short note thatskills/<name>/SKILL.mdremains the recommended structure, but a lone root-levelSKILL.mdis also recognized in v2.1.142+ when noskills/directory exists.
Suggested wording:
If a plugin does not contain askills/directory, Claude Code also treats a root-levelSKILL.mdas a plugin skill. Usenamefrontmatter to control the invoked skill name; otherwise Claude falls back to the directory basename.
Impact
Medium - Makes feature difficult to understand
Additional Context
Affected Pages:
| Page | Context |
|------|---------|
| https://code.claude.com/docs/en/plugins-reference | Technical reference currently documents skills/ directories by default and root-level SKILL.md only for explicit "skills": ["./"] manifest paths |
| https://code.claude.com/docs/en/plugins | Introductory plugin authoring guide says skills live in skills/ and gives only skills/<name>/SKILL.md examples |
Total scope: 2 pages affected
Source: Changelog v2.1.142
Exact changelog entry:
Plugins with a root-levelSKILL.mdand noskills/subdirectory are now surfaced as a skill
3 Comments
Verified against the latest docs; this still appears unresolved.
Issue #59258 Verification
Title: [DOCS] Plugin docs omit root-level
SKILL.mddiscovery without askills/subdirectoryIssue Date: 2026-05-14
Verification Date: 2026-06-23
Status: RESOLVED
---
Issue Summary
This issue reports that Claude Code v2.1.142 added a new plugin-skill discovery path — plugins with a root-level
SKILL.mdand noskills/subdirectory are now surfaced as a skill — but the documentation atplugins-referenceand the introductorypluginsguide still describe plugin skills only asskills/subdirectories, mentioning a root-levelSKILL.mdonly in the narrower explicit"skills": ["./"]manifest-override case. The reporter requests updates to both pages documenting the new fallback, the frontmatternamenaming rule, and an explicit mention of v2.1.142.---
Verification Results
Claim 1:
plugins-referencedocuments root-levelSKILL.mddiscovery without askills/subdirectoryStatus: RESOLVED
At https://code.claude.com/docs/en/plugins-reference, the top of the Skills section (line 23) now reads:
The same page, at line 45, adds an explicit fallback paragraph under "Integration behavior":
And at line 614, in the "Path behavior rules" section, the page documents the same rule with explicit version attribution:
Verdict: The reference page now documents the root-level
SKILL.mdfallback in three places (Location summary, Integration behavior, Path behavior rules), covers the frontmatternamerule, and explicitly attributes the behavior to v2.1.142. The earlier narrow framing as a manifest-override case has been retained for the"skills": ["./"]example, but the broader no-manifest fallback is now called out separately.---
Claim 2: The introductory
pluginsguide documents the root-levelSKILL.mdfallbackStatus: RESOLVED
At https://code.claude.com/docs/en/plugins, line 207 (inside "Plugin layout") now includes:
This addition sits between the default-directory table (lines 191–198) and the "Next steps" Note. The introductory guide's earlier
skills/<name>/SKILL.mdexample block at line 97 still describes the recommended layout, but the page no longer implies that theskills/directory is the only path.Verdict: The introductory guide now includes a plain-language note explaining the root-level
SKILL.mdfallback, thenamefrontmatter rule, and when to prefer theskills/directory instead. The "Minimum fix" suggested wording the reporter proposed is functionally matched, though the docs use the phrase "ships exactly one skill" instead of "does not contain askills/directory"; both convey the same gating rule.---
Claim 3: The
namefrontmatter rule and fallback behavior are explained for the new pathStatus: RESOLVED
Both pages tie the root-level
SKILL.mdinvocation name to the frontmatternamefield with a directory-basename fallback:plugins-referenceline 45: "Set the frontmatternamefield to control the skill's invocation name. Without it, Claude Code falls back to the install directory name…"plugins-referenceline 614: "The skill's invocation name follows the same rule as above: the frontmatternamefield, or the directory basename as a fallback."pluginsline 207: "Claude Code loads it as a single skill and uses the frontmatternamefield for the invocation name."Verdict: The naming rule and fallback behavior the reporter asked for are present in both the technical reference and the introductory guide.
---
Claim 4: The v2.1.142 changelog entry is documented in the changelog
Status: RESOLVED
At https://code.claude.com/docs/en/changelog, the v2.1.142 entry (May 14, 2026) at line 778 contains:
This is the exact changelog wording referenced in the issue's "Source" field.
Verdict: The changelog entry exists and matches the issue's reference.
---
Current State
| Claim | Status |
|-------|--------|
|
plugins-referencedocuments root-levelSKILL.mddiscovery | RESOLVED || Introductory
pluginsguide documents the root-levelSKILL.mdfallback | RESOLVED || Frontmatter
namerule and fallback behavior are explained | RESOLVED || v2.1.142 changelog entry is documented | RESOLVED |
---
Suggested Fix
N/A - issue has been resolved. The reporter's "Minimum fix" recommendations are satisfied by existing content in both
plugins-referenceandplugins. No additional edits are required.---
References
Locationsummary now includes "or a singleSKILL.mdfile at the plugin root"skills/directory and noskillsmanifest field, aSKILL.mdat the plugin root is loaded as a single skill…"SKILL.mdsingle-skill behaviorSKILL.mddirectly at the plugin root instead of creating askills/directory…"SKILL.mdand noskills/subdirectory are now surfaced as a skill"---
Conclusion & Recommendation
Primary Concern: Plugin documentation at
plugins-referenceand the introductorypluginsguide described skill locations only asskills/directories, missing the new v2.1.142 root-levelSKILL.mdfallback.Resolution Status: RESOLVED
Recommendation: CLOSE
Both affected pages now document the root-level
SKILL.mddiscovery path, the frontmatternamerule, and the v2.1.142 version attribution, matching the reporter's minimum fix recommendations.This issue has been automatically locked since it was closed and has not had any activity for 7 days. If you're experiencing a similar issue, please file a new issue and reference this one if it's relevant.