pi-better-skill-prompt
A Markdown skill catalog with on-demand loading for Pi.
Package details
Install pi-better-skill-prompt from npm and Pi will load the resources declared by the package manifest.
$ pi install npm:pi-better-skill-prompt- Package
pi-better-skill-prompt- Version
0.2.0- Published
- Nov 4, 2026
- Downloads
- 510/mo · 510/wk
- Author
- daoguademeng
- License
- MIT
- Types
- extension
- Size
- 10.3 KB
- Dependencies
- 0 dependencies · 4 peers
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
pi-better-skill-prompt
A leaner skill prompt for Pi. Replaces nested XML skill entries with a Markdown table and adds load_skill for on-demand loading.
- Compact catalog: a table of skill names and descriptions, with one loading hint.
- Progressive disclosure: the model gets skill paths only when it loads a skill.
- No repeated metadata: loading returns the skill directory and full body, without frontmatter containing the name and description.
Install
pi install npm:pi-better-skill-prompt
Run /reload in an existing session. Requires Pi 1.5.0 or later. Tested with Pi 1.5.0.
How it works
Before (Pi default):
<skills>
The following skills provide specialized instructions for specific tasks.
Use the read tool to load a skill's file when the task matches its description.
Resolve relative paths against the skill's directory (parent of SKILL.md). Use absolute paths in tool calls.
<available_skills>
<skill>
<name>code-review</name>
<description>Review changes for correctness.</description>
<location>/path/to/skills/code-review/SKILL.md</location>
</skill>
</available_skills>
</skills>
After:
<available_skills>
Load a skill by name with `load_skill` when its description matches the task.
|name|description|
|---|---|
|code-review|Review changes for correctness.|
</available_skills>
It calls load_skill with {"name":"code-review"} to get the skill directory and instructions. Each call reads the current file in full. The TUI shows a collapsible [skill] code-review card.
Codemode works too, including only mode:
return await tools.load_skill({ name: "code-review" });
Manual /skill:name commands keep Pi's normal behavior. Skills marked disable-model-invocation remain manual-only. Disabling load_skill restores Pi's default catalog.
Extensions that replace the entire system prompt can override this catalog.