skillsctl publish
skillsctl publish
Section titled “skillsctl publish”Publish a skill to the registry
Synopsis
Section titled “Synopsis”Package a skill directory and upload it to the registry.
The directory passed via —dir must contain SKILL.md at its root; subdirectories (scripts/, references/, assets/) are packaged and preserved on install. Versions are immutable once published, so each publish must use a new —version.
skillsctl publish [flags]Examples
Section titled “Examples” # Publish the first version of a skill skillsctl publish \ --name git-conventional \ --version 1.0.0 \ --description "Enforce conventional commit messages" \ --dir ./git-conventional
# Publish with tags and a changelog skillsctl publish \ --name git-conventional \ --version 1.1.0 \ --description "Enforce conventional commit messages" \ --dir ./git-conventional \ --tag git --tag commits \ --changelog "Add breaking-change detection"Options
Section titled “Options” --changelog string Release notes for this version --description string Short description shown in 'skillsctl explore' --dir string Path to the skill directory; must contain SKILL.md at its root -h, --help help for publish --name string Skill name (lowercase, 2-64 chars, alphanumeric and hyphens) --tag strings Tag for filtering in 'explore' (repeatable) --version string Semantic version, e.g. 1.0.0; must be unique for this skillOptions inherited from parent commands
Section titled “Options inherited from parent commands” --api-url string Registry URL; overrides the api_url setting from config and SKILLCTL_API_URL --credentials-path string Credentials file path (for testing)SEE ALSO
Section titled “SEE ALSO”- skillsctl - Discover, install, and publish Claude Code skills