From skill-linting
Ensure every file path mentioned in a skill's markdown is a real markdown link to an existing file, so linters can verify references.
How this skill is triggered — by the user, by Claude, or both
Slash command
/skill-linting:check-skill-nonlinksThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Skill docs reference other files constantly: sibling `SKILL.md`s, bin scripts, asset symlinks, external standards. If those references are bare backticks or plain text, nothing catches it when the target gets renamed or deleted. Making every path a real markdown link turns "did I break a reference?" into a fast, mechanical check.
Skill docs reference other files constantly: sibling SKILL.mds, bin scripts, asset symlinks, external standards. If those references are bare backticks or plain text, nothing catches it when the target gets renamed or deleted. Making every path a real markdown link turns "did I break a reference?" into a fast, mechanical check.
Once this is in place, you can run a linter like lychee to automatically verify links.
Every file path mentioned in markdown must be a proper markdown link so linters can verify it exists:
<!-- wrong -->
See `STYLEGUIDE.md` for conventions.
<!-- right -->
See [STYLEGUIDE.md](STYLEGUIDE.md) for conventions.
The exception is filenames that are referencing a type of file, not a specific file. For example, SKILL.md might refer to a specific file OR to the general type of file that all skills have. In the first case, it should be a link. In the second, it should not. If it should be a link, prefer ./SKILL.md to be explicit that it's referring to the file in the current directory.
npx claudepluginhub ryanpeach/skills --plugin skill-lintingCreates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.