skillet
Enables AI agents to discover, install, and manage SKILL.md skills from a Git-backed registry via MCP tools for search, install, and list operations.
README
<div align="center">
๐ณ skillet
A package manager for AI agent skills
Find, install, version and share SKILL.md skills โ from a Git-backed registry.
No server, no account, no lock-in. Just npx @jnmetacode/skillet add <skill>.
npx @jnmetacode/skillet add pdf
English | ็ฎไฝไธญๆ

</div>
Agent Skills are taking over โ a SKILL.md folder that teaches an agent a new
capability (read PDFs, build slide decks, scrape the webโฆ). But sharing them is a
mess: you copy-paste from random repos, pin nothing, and have no way to discover
what exists.
skillet is npm/brew for skills. One command to install a skill into your
project, a lockfile so it's reproducible, and a registry that's just a JSON file
in a Git repo โ so there's nothing to host and anyone can contribute with a PR.
npx @jnmetacode/skillet search pdf # discover
npx @jnmetacode/skillet add pdf # install into .claude/skills/
npx @jnmetacode/skillet list # see what's installed
npx @jnmetacode/skillet new my-skill # scaffold your own
Why skillet
- Skills are files, not dependencies. Like shadcn/ui,
skillet copies the skill into your repo (
.claude/skills/<name>/) where you can read and tweak it โ not into an opaquenode_modules. - Reproducible. Every install records the exact commit SHA in
skillet.lock.json. Commit it, and your whole team gets byte-identical skills withskillet install(thenpm ciof skills). Pin a single install withadd owner/repo#<sha>;skillet updatere-resolves a branch/tag to its latest. - Zero infrastructure. The registry is a JSON index in a Git repo, served over raw GitHub. No backend, no database, no API keys. Adding a skill is a PR.
- Install from anywhere. A registry name, any
owner/repo[/path][#ref], or a local folder. - Zero dependencies. Pure Node built-ins + your system
git. The whole CLI is a few hundred readable lines.
Install targets
npx @jnmetacode/skillet add pdf # from the registry
npx @jnmetacode/skillet add anthropics/skills/skills/pptx # any GitHub repo + subpath
npx @jnmetacode/skillet add owner/repo#v2.1.0 # a tag/branch
npx @jnmetacode/skillet add owner/repo#<commit-sha> # pin to an exact commit
npx @jnmetacode/skillet add ./skills/my-local-skill # a local folder
Skills install into .claude/skills/ by default (the common 2026 convention).
Change it per-project with skillet init or --dir.
Use it from Claude (MCP)
skillet speaks the Model Context Protocol, so
Claude Desktop / Claude Code can search and install skills for you โ "find a PDF
skill and install it" just works. Add to claude_desktop_config.json (or a
project .mcp.json):
{
"mcpServers": {
"skillet": {
"command": "npx",
"args": ["-y", "@jnmetacode/skillet", "mcp"]
}
}
}
Tools exposed: skillet_search, skillet_install (registry-only, name-validated),
skillet_list. Zero dependencies โ a few hundred lines of JSON-RPC over stdio.
Browse the registry
npx @jnmetacode/skillet gallery # builds a static, searchable HTML gallery โ site/
skillet gallery renders registry/index.json into a
single self-contained page (search, copy-to-install, links) โ zero backend. The
included GitHub Pages workflow rebuilds and publishes it automatically whenever
the registry changes, so the registry has a shareable home.
Authoring a skill
npx @jnmetacode/skillet new web-scraper # creates web-scraper/SKILL.md from a template
# edit itโฆ
npx @jnmetacode/skillet validate ./web-scraper
A skill is just a folder with a SKILL.md:
---
name: web-scraper
description: Scrape pages and extract structured data; use when the user wants web content.
version: 0.1.0
license: MIT
keywords: [scrape, http]
---
# web-scraper
Instructions the agent readsโฆ plus any supporting scripts in the same folder.
Push it to GitHub, then open a PR adding one entry to
registry/index.json โ see docs/SPEC.md.
Commands
skillet search [query] |
search the registry |
skillet add <ref> |
install a skill (registry name / owner/repo[/path][#ref] / ./local) |
skillet install |
install all locked skills at their pinned commits (npm ci-style) |
skillet list |
list installed skills |
skillet remove <name> |
uninstall |
skillet update [name] |
re-install tracked skill(s) at the latest ref |
skillet new <name> |
scaffold a new skill |
skillet validate [path] |
validate a SKILL.md |
skillet gallery |
build a static, searchable registry gallery |
skillet mcp |
run as an MCP server (stdio) for Claude/agents |
skillet init |
write skillet.json config |
Flags: --force, --dir <path>, --registry <url|path>, --json.
How it works
skillet add pdf
โ resolve name in registry index (raw GitHub JSON)
โผ
git clone --depth 1 anthropics/skills โ your system git, partial clone
โ copy skills/pdf/ โ .claude/skills/pdf/
โผ
pin commit SHA in skillet.lock.json
The "registry" is one JSON file. That's the whole backend.
Compatibility
Works with anything that reads SKILL.md skill folders (Claude Code / Claude
Agent Skills and compatible runtimes). skillet is just discovery + install +
versioning around the open SKILL.md format โ it doesn't lock you to a runtime.
Status
Early MVP โ discovery, install (registry / GitHub / local), lockfile pinning, authoring and validation all work today. Star/watch to follow along; PRs and new registry entries are the most useful contribution right now.
Sibling projects
Part of a small, local-first, zero-dependency toolkit for building AI agents โ see the toolkit overview & end-to-end recipe:
- ๐ณ skillet โ a package manager for agent skills (this repo)
- ๐ญ tracelet โ local DevTools to debug agent runs
- ๐ง engram โ a local, private memory layer for agents (and you)
License
MIT โ see LICENSE. (Skills installed through skillet keep their own licenses.)
Recommended Servers
playwright-mcp
A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.
Magic Component Platform (MCP)
An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.
Audiense Insights MCP Server
Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.
VeyraX MCP
Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.
graphlit-mcp-server
The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.
Kagi MCP Server
An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.
E2B
Using MCP to run code via e2b.
Neon Database
MCP server for interacting with Neon Management API and databases
Exa Search
A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.
Qdrant Server
This repository is an example of how to create a MCP server for Qdrant, a vector search engine.