Skill Map
Find skill installs and references across local files without scanning macOS protected home paths or obvious transcript, cache, dependency, and backup noise.
Arguments
--root PATH: Scan this root. Repeatable. Default:$HOME.--skill NAME: Restrict the report to one skill name. Repeatable.--format text|json|dot: Select report format. Default:text.--include-catalog-sources: Include known local source checkouts such as~/projects/agent-skills,~/sablier/sablier-skills, and~/sablier/agent-skillsduring broad scans. Explicit--rootvalues inside those trees are always scanned.--include-self: Include self-references in dependency output.--include-snippets: Include matched line text. Default output omits snippets to avoid leaking transcript or secret-adjacent content.--show-skipped: Include ignored path summaries in text or JSON output.
Workflow
-
Resolve the skill directory, then run the helper from that directory:
uv run scripts/skill-map.py "$ARGUMENTS" -
If no arguments were provided, run the default machine scan:
uv run scripts/skill-map.py -
Use
--format jsonwhen another command or agent will consume the result. -
Use
--format dotwhen the user asks for a graph, Graphviz input, or dependency visualization. -
Use
--include-snippetsonly when the user asks to see exact matching lines. -
Read references/ignore-policy.md only when explaining, auditing, or changing the ignore policy.
Output Semantics
dependency: a skill file or support file references another discovered skill.external-reference: a non-skill file references a discovered skill.duplicate-install: multiple discoveredSKILL.mdfiles declare or resolve to the same skill name.unresolved-like-reference: explicit$kebab-nameor/kebab-nametokens that do not match a discovered skill.
Guard Rails
- Do not search transcript or backup directories manually after the helper excludes them unless the user explicitly requests transcript/history analysis.
- Do not broaden
$HOMEscans into macOS protected paths such as~/Libraryor~/.Trash; pass narrower explicit roots instead when a broad scan needs more coverage. - Treat local skill catalog source checkouts as false positives during broad machine scans; pass them explicitly as
--rootwhen auditing catalog contents. - Treat output paths as local private context. Do not paste snippets unless
--include-snippetswas intentionally used. - Prefer adding ignore rules in the helper and documenting the rationale in
references/ignore-policy.mdinstead of ad hoc shell filters.