Skip to content

Repository files navigation

skli

CLI to manage skills, rules, and agents for AI IDEs — like a package manager.

Documentation: https://zortracks.github.io/skli/

Install

Requires Node.js 20+. For GitHub sources, install and authenticate the gh CLI.

# One-off
npx @zortracks/skli <command> [options]

# Or install globally
npm install -g @zortracks/skli
skli <command> [options]

Quick start

# 1. Create a project manifest
npx @zortracks/skli init

# 2a. Reference a local package already in the repo
npx @zortracks/skli add cursor rule .cursor/rules/my-rule.mdc

# 2b. Install a package from GitHub into IDE folders
npx @zortracks/skli install cursor skill owner/repo@v1:skills/foo

# 2c. Link a remote project manifest and pick packages interactively
npx @zortracks/skli link cursor owner/repo

# Optional: ignore installed IDE paths in git
npx @zortracks/skli install cursor skill owner/repo:skills/foo --gitignore

Commands

Command Purpose Example
init Create {project}/.skli/skli.json and register the project skli init -y
add Reference a local skill/rule/agent in the project manifest (no copy) skli add cursor rule .cursor/rules/foo.mdc
install Install a skill/rule/agent from a local path or GitHub into IDE dirs skli install cursor skill owner/repo:skills/foo
link Link a remote ProjectManifest and deploy selected packages skli link cursor owner/repo --all
update Upgrade repos packages (and linked manifests) to a newer ref skli update --all
restore Re-fetch repos packages / links at the pinned version skli restore cursor skill foo
remove Uninstall packages from the manifest (and optionally disk) skli remove cursor skill foo
unlink Remove a whole link by owner/repo (or URL) skli unlink owner/repo

Common options:

Option Commands Meaning
-g, --global install, update, restore, remove Use ~/.skli/skli.json and global IDE folders
--gitignore install, link, update Append project install destinations under # Ignored AI IDE references in .gitignore
--version <ref> update Pin a single package to an explicit ref
--all link, update, restore, remove Select all matching items (required for broad update/restore/remove)
--debug most commands Diagnostic logs on stderr

Run skli <command> --help for full signatures.

GitHub sources

Shorthand: owner/repo[@ref][:path] or an HTTPS blob URL.

skli install cursor skill owner/repo@v1.2.0:skills/my-skill
skli install cursor rule https://github.com/owner/repo/blob/main/rules/foo.mdc
skli link cursor owner/repo@main

Scopes

  • Project (default): {cwd}/.skli/skli.json, copies under the project IDE folders (e.g. .cursor/).
  • Global (--global): ~/.skli/skli.json, copies under the user IDE home (e.g. ~/.cursor/).

link / unlink are project-scoped only.

Configuration

File Path Role
Project manifest {project}/.skli/skli.json Packages and links for the project
Global manifest ~/.skli/skli.json Packages for the user profile
Project index ~/.skli/projects.json Projects touched by the CLI

Published schema: schemas/skli.project.schema.json.

Spec status

Product specs live under specs/ (index). Full user docs and mirrored specs: zortracks.github.io/skli.

Feature Status
domain-glossary defined
cli-core implemented
config-manifests implemented
cmd-init implemented
cmd-install implemented
cmd-link implemented
cmd-add implemented
cmd-update implemented
cmd-restore implemented
cmd-remove implemented
cmd-unlink implemented
github-source implemented
ide-targets implemented

Contributing

npm install
npm run build
node dist/cli.js --help

Docs site (local): npm run docs:dev after install.

GitHub Pages is built by .github/workflows/publish.yml on push to main and after each release. One-time repo setting: Settings → Pages → Source = GitHub Actions.

Release

  1. GitHub Actions → Publish → choose patch / minor / major → Run workflow. Use none to publish the current package.json version when the git tag already exists (e.g. after a failed release that bumped but did not publish).
  2. The workflow bumps the version on main (unless none), pushes tag vX.Y.Z, publishes to npm via Trusted Publishing (OIDC), deploys docs, and opens a sync PR maindevelop if needed.

First-time npm setup

  1. Ensure the @zortracks/skli package exists on npm (one manual publish if needed).
  2. On npmjs.com → package @zortracks/skliTrusted Publisher: GitHub org/user zortracks, repository skli, workflow filename publish.yml, allow npm publish.
  3. Later releases only need the Publish workflow.

License

MIT — see LICENSE.

About

CLI to manage skills, rules, and agents for AI IDEs — like a package manager.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages