Skil is a CLI tool that makes it easy to install, update, and organize Agent Skills from Git repositories or archives. It wraps the workflows around skill packages so developers and teams can share curated skill sets, keep them up to date, and bootstrap new agents quickly without manual copying or custom scripts.
This tool is inspired by vercel-labs/skills but meant for those, that don't want to rely on javascript.
Existing tools recommend that you copy skill over into your repository or your tool's global configuration folder. skil aims to make the maintenance of skills easier by tracking their upstreams and allowing you to update skills just like you would with other dependencies.
You can still have your local skills, but if you decide to use skill from another repository, e.g.:
skil add https://github.com/github/awesome-copilot --skill gh-cliskil will create a .skil.toml lock-file for you:
[source."https://github.com/github/awesome-copilot.git"]
checksum = "d99ba7198680e68f49d7e4cd2f7cc38209f3b232"
skills = ["gh-cli"]You can then update installed skills to their latest version:
skil updateOr keep only .skil.toml in your VCS and allow anyone else to install the tracked skills for the tool of their choice using:
skil installInstall with Cargo:
cargo install skilOr build from source:
git clone https://github.com/matoous/skil
cd skil
cargo install --path src/skil# Install a skill package
skil add vercel-labs/agent-skills
# Browse available skills in a package
skil add vercel-labs/agent-skills --list
# Install a specific skill
skil add vercel-labs/agent-skills --skill frontend-design
# See what is installed
skil list
# Search for skills
skil find typescript
# Check for updates and apply them
skil check
skil update
# Create a new SKILL.md template
skil init my-skill
# Generate shell completions
skil completions zsh
# Build static docs website from repository skills
skil docs build --source .
# Build and serve docs locally
skil docs serve --source . --port 4173Add a skill package from a repository or archive.
skil add <source> [options]Options:
-g, --globalInstall for all agents (default is current agent only).--copyCopy files instead of symlinking.-a, --agent <agent...>Target one or more agents.-s, --skill <skill...>Install one or more skills from the package.-l, --listList skills found in the package.-y, --yesSkip confirmation prompts.--allInstall all skills in the package.--full-depthKeep full directory depth when installing.
Remove installed skills.
skil remove [skills...] [options]Options:
-g, --globalRemove from all agents (default is current agent only).-a, --agent <agent...>Target one or more agents.-s, --skill <skill...>Remove one or more specific skills.-y, --yesSkip confirmation prompts.--allRemove all installed skills.
List installed skills.
skil list [options]Options:
-g, --globalList global installs.-a, --agent <agent...>Filter by one or more agents.
Search for skills by keyword.
skil find [query]Check for available skill updates.
skil checkUpdate all installed skills to the latest versions.
skil updateInitialize a new skill template.
skil init [name]Generate shell completion scripts.
skil completions <shell>Supported shells include: bash, zsh, fish, elvish, powershell.
Build a static website that renders discovered repository skills.
skil docs build [--source <path>] [--output <path>] [--full-depth]Build docs and serve them over a local HTTP server.
skil docs serve [--source <path>] [--output <path>] [--host <host>] [--port <port>] [--full-depth]cargo build
cargo run -p skil -- --help