skillsync
Docs/Skillsync CLI

Manage skills with skl

Find, install, update and publish agent skills.

These docs cover the current Skillsync CLI. Local session support is powered by the open-source txcript project.

A skill is a folder with a SKILL.md in it. skl skills lists the ones on your machine, installs ones from Skillsync, and publishes yours.

Anything that talks to Skillsync needs skl login. Listing your local skills doesn't.

Where skills live

ScopeFolders
User~/.claude/skills, ~/.agents/skills
Project.claude/skills, .agents/skills in the current directory

An install writes to both folders of the scope you pick.

List your skills

skl skills list
skl skills list --scope project
skl skills list --json

Find and preview

skl skills search "code review"
skl skills show @owner/skill-name

show prints the skill and its files without installing anything. Both take --json.

Install

skl skills install @owner/skill-name
skl skills install @owner/skill-name --scope project

The first installs for you, the second into the current project. If the skill is already there, skl asks before replacing it. --force replaces it without asking.

Update

skl skills update --dry-run
skl skills update
skl skills update skill-one skill-two

--dry-run shows what would change. update only touches skills you installed from Skillsync.

Workspace skills

skl skills sync
skl skills sync --workspace <slug>
skl skills sync <name>

With no name, sync compares your workspace's skills with the ones here and changes nothing. With a name, it writes that workspace's version onto this machine. It never uploads.

OptionWhat it does
--workspace <SLUG>Only skills shared through this workspace.
--projectWrite into the current project instead of your user folders.
--dry-runShow the changes file by file and write nothing.
-f, --forceReplace a local copy that differs, without asking.
--jsonPrint JSON.

When two people share a skill with the same name, pass author/name.

Publish

skl skills upload <skill> --dry-run
skl skills upload <skill>
skl skills upload <skill> --public

<skill> is a skill's name or the path to its folder. Leave it out to pick from a list. A skill is private unless you pass --public. --project also looks in the current project when you give a name.

The skill needs a description in its frontmatter and a body. SKILL.md and the text files beside it are sent. Binary files and dotfiles are not.

Publishing the same skill again updates it.