| name | magpie-list-skills |
| family | utilities |
| mode | Meta |
| description | Print a human-readable index of every skill in this repository,
grouped by family prefix (`pr-management`, `security`, `setup`,
…) with each skill's name and the first sentence of its
`description`. The listing is generated on every run from the
live `.claude/skills/*/SKILL.md` files, so it never goes stale
when skills are added, removed, or rewritten.
|
| when_to_use | Invoke when a human asks *"what skills are available"*, *"list
the skills"*, *"show me the skills in this repo"*, *"give me a
table of contents for the skills"*, or types `/magpie-list-skills`.
This is a help-style overview for humans onboarding to the
repository — agents route via the live frontmatter
`description` field directly and do not need this index to
choose a skill.
|
| capability | capability:stats |
| license | Apache-2.0 |
list-skills
Print a human-readable index of the skills in this repository.
The index is generated on every run from the live
.claude/skills/*/SKILL.md files — there is no cached copy to
keep in sync. The skill exists for humans (newcomers reading the
repo, maintainers checking what is available); agents route
invocations via the same frontmatter the script reads, so this
skill is purely informational.
Prerequisites
- Python 3.9+ on
PATH with PyYAML importable. The framework's
Python toolchain already meets this; no extra setup.
Step 1 — Run the listing script
Run the bundled script and present its output to the user
verbatim:
python3 .claude/skills/magpie-list-skills/scripts/list_skills.py
For a layout that puts each description on its own indented line
(easier to read when descriptions are long), pass --verbose:
python3 .claude/skills/magpie-list-skills/scripts/list_skills.py --verbose
The script:
- walks
.claude/skills/*/SKILL.md relative to its own location;
- parses each skill's YAML frontmatter for
name + description;
- groups skills by family prefix (the first hyphen-separated
token, with
pr-management recognised as a two-token family —
see KNOWN_TWO_TOKEN_FAMILIES);
- prints each skill with the first sentence of its description.
When a new multi-token family appears (e.g. a hypothetical
docs-build-*), add the prefix to KNOWN_TWO_TOKEN_FAMILIES in
scripts/list_skills.py; otherwise the
new skills land under the single-token head.
Step 2 — Hand the output to the user
Quote the script output back to the user as-is. Do not
paraphrase, summarise, or re-order — the value of this skill is
that the listing is the canonical, deterministic view of what
exists. If the user asks for more detail on a specific skill,
read that skill's SKILL.md and answer from it.
Hard rules
- Read-only. This skill never edits, creates, or deletes
files. It only reads
SKILL.md files under .claude/skills/.
- No paraphrasing. Always present the script output verbatim.
Paraphrasing reintroduces the staleness this skill exists to
prevent.
References
scripts/list_skills.py — the
listing script Step 1 invokes.
AGENTS.md — the
framework's "Reusable skills" section, which explains the
.claude/skills/ layout and frontmatter convention.
write-skill — sibling skill for
authoring a new skill. Use it when the listing reveals a gap
that warrants a new entry.