Specifiers

skills-package-manager uses specifiers to describe where skills come from.

General format

git/file/npm: <source>#[ref&]path:<skill-path>
link: link:<path-to-skill-dir>

Supported forms

TypeExample
GitHub shorthandowner/repo
GitHub URLhttps://github.com/owner/repo
Git + pathhttps://github.com/owner/repo.git#path:/skills/my-skill
Git + ref + pathhttps://github.com/owner/repo.git#main&path:/skills/my-skill
Git + commit SHA + pathhttps://github.com/owner/repo.git#6cb0992a176f2ca142e19f64dca8ac12025b035e&path:/skills/my-skill
Local linklink:./local-dir/skills/my-skill
Local tarballfile:./skills-package.tgz#path:/skills/my-skill
npm packagenpm:@scope/skills-package#path:/skills/my-skill

Notes

  • source: A Git repository URL, a local link: path, a local file: tarball, or an npm: package name
  • ref: An optional git ref, such as main, a tag, a full commit SHA, or a short commit SHA
  • path: The directory of the skill inside the source repository or package

Resolution types

  • git: Clone the repository, resolve the commit, and copy the skill files
  • link: Read the local directory and copy the skill files
  • file: Extract the local tgz package and copy the skill files
  • npm: Resolve the package from the configured registry, lock the tarball URL/version/integrity, and copy the skill files

npm: reads registry and scoped @scope:registry from .npmrc, and reuses matching auth entries for private registries.