Repository navigation
docs: repoint plugins-reference links to the split plugin docs pages #5962
Description
Problem
Upstream split the old plugins reference into a plugins/ section. The plugin manifest content now lives at https://code.claude.com/docs/en/plugins/manifest-reference, and CLI commands at https://code.claude.com/docs/en/plugins/cli-reference. The old slug https://code.claude.com/docs/en/plugins-reference still serves the manifest page (HTTP 200, title "Plugin manifest reference"), so plain links work, but several anchors that used to live there no longer exist on it.
On origin/main 81ec20d5e, 155 tracked files cite code.claude.com/docs/en/plugins-reference. Anchor counts (git grep -h -o 'code.claude.com/docs/en/plugins-reference#[a-z0-9-]*' origin/main | sort | uniq -c):
| Anchor | Count | Still on the manifest page? |
|---|---|---|
#user-configuration |
66 | yes |
#where-each-variable-resolves |
45 | yes |
#plugin-install |
42 | no, now plugins/cli-reference#plugin-install |
#environment-variables |
12 | yes |
#monitors, #defaultenabled, #limit-a-field-to-fixed-options, #where-values-are-stored, #reference-a-saved-value, #fields-that-run-through-a-shell, #path-rules, #metadata-precedence, #settings, #standard-layout |
1 to 4 each | yes |
#default-enablement |
4 | no, likely #defaultenabled |
#standard-plugin-layout |
3 | no, likely #standard-layout |
#component-path-fields |
1 | no, likely #component-path-forms |
#plugin-caching-and-file-resolution, #persistent-data-directory, #share-files-within-a-marketplace-with-symlinks |
2, 2, 1 | no; new home not yet located (check plugins/loading, plugins/components, plugins/marketplace-reference) |
The 42 #plugin-install links are generated: scripts/sync-plugin-options-docs.py:208 emits - [Plugin install options](https://code.claude.com/docs/en/plugins-reference#plugin-install) into each plugin's options docs (one file in about 41 plugins).
Evidence
- Fetched
plugins-reference.md,plugins/manifest-reference.md,plugins/cli-reference.mdandllms.txton 2026-10-02. The manifest page's heading list contains none of the "no" anchors above.cli-reference.mdhas### plugin installwith the--config <key=value>row. - Not verified: the new home of the three caching, data-directory and symlink anchors; whether upstream will keep serving the old slug.
Proposed approach
- Change the generator line in
scripts/sync-plugin-options-docs.pytohttps://code.claude.com/docs/en/plugins/cli-reference#plugin-installand regenerate the plugin options docs with the script. - Sweep the remaining
plugins-referencelinks to the canonicalplugins/manifest-referenceURL, mapping each dead anchor to its new page and heading (fetch each target page's.mdand confirm the heading exists). - Any plugin whose files change gets the version bump and changelog entry the repo's release rules require.
Acceptance criteria
-
git grep 'docs/en/plugins-reference'returns no matches. - Every
plugins/manifest-reference#...andplugins/cli-reference#...anchor in the tree matches a heading on the fetched page. - Re-running
scripts/sync-plugin-options-docs.pyproduces no diff.
Constraints and gotchas
- Edit the generator, not the 42 generated files by hand, or the next sync reverts them.
- Upstream anchors are GitHub-style slugs of the heading text; a heading wrapped in backticks (for example
`defaultEnabled`) slugs todefaultenabled. - Related: docs: tree-wide no-copy retrofit of files quoting upstream pages #5684 (tree-wide no-copy retrofit of files quoting upstream pages).
Activity
kyle-sexton commentedon Oct 3, 2026
session-flow specifics for this sweep, from a
/plugin-quality:auditof/session-flow:audit-sessions(2026-10-03). Re-verified against main 9671ece.plugins/session-flow/skills/audit-sessions/SKILL.md:33citeshttps://code.claude.com/docs/en/plugins-reference#where-each-variable-resolvesinside a Pointer / As of / Recheck block (As of 2026-10-02 at:34). The anchor exists onplugins/manifest-reference. When repointing it, re-date the As of line too, per.claude/rules/skill-bodies-state-current-rules.md.plugins-referencesaw<link rel="canonical" href="https://code.claude.com/docs/en/plugins/manifest-reference"/>, and the old slug is absent from sitemap.xml and llms.txt: it is a silent alias, so it may stop resolving without notice.skills/retro/SKILL.mdandskills/find-handoff/SKILL.md(#where-each-variable-resolves);skills/find-handoff/reference/rung-1-known-location.mdandreference/structure.md(#environment-variables, plus one prose mention in structure.md);README.md(#user-configuration, and#plugin-install, which now lives onplugins/cli-reference).kyle-sexton commentedon Oct 4, 2026
docs: cite #5962 bare in the autonomy and github CHANGELOG lines
chore: merge main into docs/5962-repoint-plugins-reference-links