-
Notifications
You must be signed in to change notification settings - Fork 739
Open
Labels
distributionRelated to distributing skills.Related to distributing skills.
Description
Tip
This proposal complements the filesystem discussions in #63 and #27 by providing a distribution mechanism for the JavaScript ecosystem.
Context & Problem
The current Agent Skills specification defines the format of SKILL.md files but does not standardize how these skills are distributed to developers.
Currently, there is no standard way to:
- Bundle skills alongside the code they document.
- Auto-discover skills installed via package managers.
- Ensure skills stay version-locked with the library code.
Proposal
Add an optional agentskills field to package.json. This allows library authors to declare the skills contained within their npm packages.
Schema Definition
{
"name": "my-library",
"agentskills": {
"skills": [
{ "name": "my-skill", "path": "./skills/my-skill" }
]
},
"files": ["dist", "skills"]
}name: Lowercase, hyphenated unique identifier for the skill.path: Relative path from package root to directory containingSKILL.md.
Benefits
- Version Locking: Skills are versioned with the code. Install
v2.0.0of a library, getv2.0.0skills. - Single Install:
npm install my-libraryinstalls both the code and the agent instructions. - Infrastructure: Leverages existing npm caching, distribution, and security scanning.
- Auto-Discovery: Agents can scan
node_modulesto find all available capabilities.
Reference Implementation
I have built a working implementation: npm-agentskills.
Features:
- Scans
node_modulesfor theagentskillsfield - Exports skills to agent-specific directories
- CLI:
agentskills listandagentskills export --target <agent> - Nuxt module for automatic export on
nuxi prepare - Programmatic API for custom integrations
Real-world Example:
onmax/nuxt-better-auth#58
Related
Supported Targets
| Agent | Target Path |
|---|---|
| Claude | .claude/skills/ |
| GitHub Copilot | .github/skills/ |
| Cursor | .cursor/skills/ |
| Codex | .codex/skills/ |
| OpenCode | .opencode/skill/ |
| Amp | .agents/skills/ |
| Goose | .goose/skills/ |
Ecosystem & Compatibility
- Nuxt RFC: Adoption plan for Nuxt at nuxt/nuxt#34059
- PRPM (PRPM: Open Source Cross-format distribution and conversion for Agent Skills #9): Compatible with Package Repository Package Manager concepts
- Filesystem (RFC: Standardize skill installation/discovery paths #63): Complements filesystem proposals by handling delivery to user's machine
Future Scope
While this proposal focuses on npm/package.json, the pattern is applicable to other ecosystems:
- Rust:
Cargo.tomlmetadata - Python:
pyproject.tomlmetadata - Deno/Bun: Compatible with
package.jsonusage
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
distributionRelated to distributing skills.Related to distributing skills.