@alexgorbatchev/pi-skill-library
Pi extension that exposes skills-library roots through /library:<skill-name> commands.
Package details
Install @alexgorbatchev/pi-skill-library from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:@alexgorbatchev/pi-skill-library- Package
@alexgorbatchev/pi-skill-library- Version
1.0.3- Published
- Apr 9, 2026
- Downloads
- 517/mo · 18/wk
- Author
- alexgorbatchev
- License
- MIT
- Types
- extension
- Size
- 29.5 KB
- Dependencies
- 0 dependencies · 1 peer
Pi manifest JSON
{
"extensions": [
"./src/index.ts"
]
}Security note
Pi packages can execute code and influence agent behavior. Review the source before installing third-party packages.
README
@alexgorbatchev/pi-skill-library
pi extension that discovers skills-library roots and exposes their skills through /library:<skill-name> commands. This extension solves the problem of too many skills. There are skills that you need only occasionally and maybe don't even need them discoverable.
Install
pi install npm:@alexgorbatchev/pi-skill-library
What it does
This package does not register bundled skills through Pi's normal skill loader.
Instead, it discovers skills-library directories, loads the skills from those roots itself, and expands:
/library:<skill-name>
into the same <skill ...>...</skill> block format Pi uses for built-in /skill:<name> expansion.
That keeps these skills out of Pi's default skill discovery flow while still making them explicitly invokable.
Library root locations
The extension looks for skills-library in these places:
<cwd>/.pi/skills-library<cwd>and ancestor.agents/skills-librarydirectories, stopping at the git root (or filesystem root when no git root exists)~/.pi/agent/skills-library~/.agents/skills-library- package-local
skills-librarydirectories derived from discovered package skill roots - extra paths configured via Pi settings under
@alexgorbatchev/pi-skills-library.paths
Settings
Use a namespaced block in Pi settings:
{
"@alexgorbatchev/pi-skills-library": {
"paths": ["./skills-library", "~/shared/pi-skills-library"]
}
}
Path resolution follows normal Pi settings behavior:
- paths in
~/.pi/agent/settings.jsonresolve relative to~/.pi/agent - paths in
.pi/settings.jsonresolve relative to.pi - absolute paths are supported
~/...is supported
Directory layout
Each library root should contain normal skill directories:
skills-library/
├── my-skill/
│ └── SKILL.md
└── another-skill/
├── SKILL.md
└── references/
Commands
Invoke a library skill directly:
/library:my-skill
/library:my-skill additional context here
Discovered library skills are registered as real extension slash commands at startup and reload, so they show up in slash-command autocomplete like other commands.
On startup, the extension prints a library-discovery message into the transcript listing each discovered library root and its skills.
Use the package info command to print the same report again:
/pi-skill-library