skill-cli is a command-line tool for managing shared skill repositories and syncing them into target directories with symlinks.
- Add a skill repository once and reuse it across multiple targets
- Clone repositories locally on first add
- Sync all discovered skills into target directories with symlinks
- Update all configured repositories with one command
- Update a single repository with
--repo - Remove repositories and targets cleanly
- Go 1.22 or later
- curl
- tar
Install with curl | bash:
curl -fsSL https://raw.githubusercontent.com/CuberL/skill-cli/main/install.sh | bashInstall to a custom directory:
curl -fsSL https://raw.githubusercontent.com/CuberL/skill-cli/main/install.sh | INSTALL_DIR="$HOME/.local/bin" bashInstall a specific tag:
curl -fsSL https://raw.githubusercontent.com/CuberL/skill-cli/main/install.sh | SKILL_CLI_VERSION="v0.1.0" bashBy default, the installer uses /usr/local/bin when writable, otherwise it falls back to ~/.local/bin.
Add a repository:
skill-cli add https://github.com/example/skills.gitAdd a local directory without copying it into ~/.skill-cli/repos:
skill-cli add ~/Documents/my-skillsRemove a repository:
skill-cli remove my-skills
skill-cli remove https://github.com/example/skills.gitAdd targets:
skill-cli target add ~/.codex/skills
skill-cli target add ~/.cursor/skills
skill-cli target add ~/.claude/skills/Remove a target:
skill-cli target remove ~/.codex/skillsList current configuration:
skill-cli list
skill-cli list --all
skill-cli target listSync all configured repositories to all targets:
skill-cli syncUpdate all repositories:
skill-cli updateUpdate a single repository:
skill-cli update --repo my-skills
skill-cli update --repo https://github.com/example/skills.gitskill-cli add https://github.com/example/team-skills.git
skill-cli target add ~/.codex/skills
skill-cli target add ~/.cursor/skills
skill-cli target add ~/.claude/skills/
skill-cli updateskill-cli addautomatically syncs the new repository to all existing targets.skill-cli target addautomatically syncs all configured repositories to the new target.skill-cli removeremoves the configured repository, deletes its local clone, and cleans up matching symlinks from all targets.skill-cli target removeremoves the target from configuration and cleans up matching symlinks in that target.- If a target already contains a non-symlink path with the same skill name,
skill-cliwill report a conflict instead of overwriting it.