skild
skild is the package manager for Agent Skills — like npm, but for AI agents.
When to Use
Use this skill when:
- Installing new capabilities for AI agents
- Managing installed Skills (list, update, uninstall)
- Publishing Skills to share with the community
- Searching or discovering new Skills
Agent Search & Discovery (Skild Index)
When an agent needs to find Skills from the Skild index (registry + linked + auto catalog), use the Registry API:
# Unified discovery (registry + linked skills)
curl "https://registry.skild.sh/discover?q=<query>&limit=20"
# Resolve a short alias (optional)
curl "https://registry.skild.sh/resolve?alias=<alias>"
Notes:
- Prefer
aliasif present; it provides the shortest install command. - Use the returned
installstring directly (quotes may appear when a#refis required). /discoversupports pagination and filtering:cursor=<nextCursor>for paginationsort=updated|new|downloads_7d|downloads_30d|stars|stars_30dskillset=true|falseandcategory=<id>to narrow results
- If you need to browse linked items only:
https://registry.skild.sh/linked-items?limit=20
- CLI
skild searchuses the same unified index.
Agent Workflow (Recommended)
- Search via
/discoverand shortlist results by description/tags. - Confirm with the user and pick the best match.
- Install using the provided
installcommand (or alias). - Manage using
skild list / info / update / uninstall / sync.
Prerequisites
Node.js ≥18 is required.
npm install -g skild
Core Commands
Install a Skill
# From GitHub (shorthand)
skild install owner/repo/path/to/skill
# From registry
skild install @publisher/skill-name
# From local directory
skild install ./my-skill
# Aliases (npm-style)
skild add @publisher/skill-name
skild i @publisher/skill-name
# Pick one Skill when source has multiple SKILL.md
skild install owner/repo --skill skills/pdf
List Installed Skills
skild list
Output groups Skills by type: Skillsets, Skills, Dependencies.
Manage Skills
skild info <skill> # Show details
skild update <skill> # Update to latest
skild uninstall <skill> # Remove
skild validate <path> # Validate structure
skild sync [skills...] # Sync across platforms
Search Registry
skild search <query>
Browse online: hub.skild.sh
Target Platforms
| Platform | Option | Global Path | Project Path |
|---|---|---|---|
| Claude | -t claude (default) | ~/.claude/skills | ./.claude/skills |
| Codex | -t codex | ~/.codex/skills | ./.codex/skills |
| Copilot | -t copilot | ~/.github/skills | ./.github/skills |
| Antigravity | -t antigravity | ~/.gemini/antigravity/skills | ./.agent/skills |
| OpenCode | -t opencode | ~/.config/opencode/skill | ./.opencode/skill |
| Cursor | -t cursor | ~/.cursor/skills | ./.cursor/skills |
| Windsurf | -t windsurf | ~/.windsurf/skills | ./.windsurf/skills |
| Agents | -t agents | ~/.agents/skills | ./.agents/skills |
# Example: Install to Antigravity
skild install @publisher/skill -t antigravity
# Project-level installation
skild install @publisher/skill --local
Defaults & Scope
# Default platform & scope
skild config set defaultPlatform codex
skild config set defaultScope project
# Default repo for push
skild config set push.defaultRepo owner/repo
Skillsets
Skillsets bundle multiple Skills for one-command installation:
skild install @skild/data-analyst-pack
# Installs: csv, pandas, sql-helper...
Publishing Skills
# 1. Create account
skild signup
# 2. Login
skild login
# 3. Publish
skild publish --dir ./my-skill
Push to Git Repos (Registry-free)
Use skild push to sync a Skill into a Git repository and push changes.
# Push to GitHub by owner/repo
skild push owner/repo --dir ./my-skill
# Set a default repo (omit <repo> afterwards)
skild config set push.defaultRepo owner/repo
skild push --dir ./my-skill
# Push to a local repo path
skild push ~/work/skills-repo --local --dir ./my-skill
# Push to a specific subdirectory
skild push owner/repo --dir ./my-skill --path skills/my-skill
# Push to a branch (or append #branch to the repo)
skild push owner/repo#dev --dir ./my-skill
Notes:
- The target path defaults to
skills/<skill-name>derived fromSKILL.md. - Target path cannot be the repo root.
- The command clones, commits, and pushes to the remote branch.
- For
owner/repo, skild tries SSH first and falls back to HTTPS if SSH auth fails. skild push <repo>always overrides the default repo.- You can also set
SKILD_DEFAULT_PUSH_REPOto override the default repo per shell.
Command Reference
For the complete command reference with all options, see commands.md.
Skillsets
For detailed Skillsets guide (bundles of Skills), see skillsets.md.
Troubleshooting
For common issues and solutions, see troubleshooting.md.
More Info
- Website: skild.sh
- Hub: hub.skild.sh
- Documentation: GitHub